小編給大家分享一下composer更新項目使用VCS源的示例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創(chuàng)新互聯(lián)公司2013年至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元南寧做網(wǎng)站,已為上家服務(wù),為南寧各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
我們在PHP開發(fā)當(dāng)中難免會遇到這種情況,在用composer做包管理工具的時候,項目依賴的某個開源組件的部分代碼需要根據(jù)整個項目的需求進(jìn)行修改,這種時候可以通過修改vendor包里面的組件源碼來實現(xiàn),然而修改vendor包容易導(dǎo)致一個問題,那就是版本不容易進(jìn)行管理,如果進(jìn)行composer update操作很容易就把修改過的代碼給覆蓋了。將composer的repository管理設(shè)置為vcs源可以很好地解決這個問題。
VCS全稱Version Control System,意為版本管理系統(tǒng),根據(jù)composer官方文檔,現(xiàn)在composer支持Git、Subversion、Mercurial和Fossil等版本管理系統(tǒng),其中如果使用Github的git源,Bitbucket的git和merurial源,composer是可以直接通過API獲取到zip包的,如果是其他源,則需要本地有對應(yīng)的客戶端支持。
假設(shè)有這么個場景,在開發(fā)的過程中使用了authorA的projectA包,然后我需要對包里面某個部分的代碼進(jìn)行一些跟本地項目環(huán)境更加適配的更改,就可以先將projectA的項目代碼fork到自己的github目錄下,這樣就可以對項目源碼進(jìn)行修改了(請遵循相應(yīng)的開源協(xié)議),然后在工程目錄的composer.json當(dāng)中只需要加入這幾行代碼:
{ "repositories": [ { "type": "vcs", "url": "https://github.com/myAcount/projectA" } ], "require": { "authorA/projectA": "~x.x" } }
將本地修改后的代碼push到自己的倉庫中,注意要打tag,然后在項目目錄下執(zhí)行composer update authorA/projectA 就可以使用用自己倉庫做源的projectA包了。
以上是“composer更新項目使用VCS源的示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!