分享一種給composer包打補(bǔ)丁的簡便方法!

本文由composer教程欄目給大家介紹一種簡便的給 composer 包打補(bǔ)丁的方法,希望對需要的朋友有所幫助!

開發(fā)過程中,我們經(jīng)常會(huì)遇到某個(gè) composer 包有 bug,或者需要改動(dòng)部分功能以滿足自己的業(yè)務(wù)。如果你和包的發(fā)布者聯(lián)系,一般不會(huì)很快得到更新,非共性的需求,基本也會(huì)被忽略掉。

這種情況下,需要我們自己解決了,有些包是解決類似需求的,比如 cweagans/composer-patches,但用起來還是很麻煩。

我個(gè)人實(shí)踐中用了一種很簡便的方法,原理也很簡單,其實(shí)就是自己 COPY 出來需要改動(dòng)文件,然后 composer 執(zhí)行包的安裝或更新后會(huì)自動(dòng)覆蓋掉原有的。

方法如下:

1、先進(jìn)入 vendor/ 某個(gè)包的目錄下,進(jìn)行代碼修改,注意修改期間,不要執(zhí)行 composer 的安裝或更新命令。

2、工程目錄下創(chuàng)建目錄 patches,保持包的修改文件路徑,COPY 放在 patches 下面,參照下圖:

分享一種給composer包打補(bǔ)丁的簡便方法!

3、復(fù)制下面代碼到 composer.json 的 scripts -> post-autoload-dump 下:

"@php?-r?"passthru(sprintf(PHP_OS==='WINNT'?'xcopy?%s?/D?/E?/C?/R?/H?/I?/K?/Y':'cp?-rfv?%s',?'patches/*?vendor/'));""

分享一種給composer包打補(bǔ)丁的簡便方法!

這樣就可以了。

本文系轉(zhuǎn)載,原文地址:https://learnku.com/articles/70440

以上就是分享一種給

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享