下面由composer教學專欄帶大家介紹#composer更新專案使用VCS來源,希望對需要的朋友有幫助!
我們在PHP開發當中難免會遇到這種情況,在用composer做套件管理工具的時候,專案依賴的某個開源元件的部分程式碼需要根據整個專案的需求進行修改,這種時候可以透過修改vendor包裡面的元件源碼來實現,然而修改vendor包容易導致一個問題,那就是版本不容易進行管理,如果進行composer update操作很容易就把修改過的程式碼給覆蓋了。將composer的repository管理設定為vcs來源可以很好地解決這個問題。
VCS全名為Version Control System,意為版本管理系統,根據composer官方文檔,現在composer支援Git、Subversion、Mercurial和Fossil等版本管理系統,其中如果使用Github的git來源,Bitbucket的git和merurial來源,composer是可以直接透過API取得到zip套件的,如果是其他來源,則需要本地有對應的客戶端支援。
假設有這麼個場景,在開發的過程中使用了authorA的projectA包,然後我需要對包裡面某個部分的程式碼進行一些跟本地專案環境更加適配的更改,就可以先將projectA的專案程式碼fork到自己的github目錄下,這樣就可以對專案原始碼進行修改了(請遵循對應的開源協定),然後在工程目錄的composer.json當中只需要加入這幾行程式碼:
{ "repositories": [ { "type": "vcs", "url": "https://github.com/myAcount/projectA" } ], "require": { "authorA/projectA": "~x.x" } }
將本地修改後的程式碼push到自己的倉庫中,注意要打tag,然後在專案目錄下執行composer update authorA/projectA 就可以使用用自己倉庫做來源的projectA包了。
以上是關於composer更新專案使用VCS來源的詳細內容。更多資訊請關注PHP中文網其他相關文章!