簡體   English   中英

Composer 還原包

[英]Composer revert packages

我正在 Symfony 2.1 中構建一個新應用程序。 我正在使用許多使用作曲家拉入的捆綁包。 很多這些捆綁包在最新版本的 Symfony 中存在問題,我不得不將 go 放入 /vendor 文件夾以識別問題。

這意味着我正在直接更改供應商文件 - 純粹是出於測試目的。 (當我們修復了一個捆綁包時,我們會分支並提交適當的拉取請求)。

我想知道是否有類似composer.phar revert的命令可以撤消對供應商文件夾所做的任何更改(如 git 結帳)。 目前,如果我運行作曲家updateinstall它不會這樣做。

謝謝

如果保留了composer.lock文件,則composer install會將所有供應商恢復到之前安裝的狀態。

如果您使用composer update composer.lock已更改為。 所以我做了一個小技巧。 通過git恢復composer.lock ,然后運行composer install 它將刪除最新的軟件包並下載以前的軟件包。

discard-changes添加到composer.json文件中:

{
    "config": {
        "discard-changes": true
    }
}

確保您使用的是最新版本的Composer。

 cd /my/project/location/

 rm -rf vendor/my_vendor_to_rollBack

 composer install

據我所知,除了與版本有關外,上述答案均無效。 我更改了已安裝的版本,您可以恢復到以前的版本。

但是,如果您只是刪除或更改文件,則更改將顯示在編輯器composer status -v ,但是無法還原(即使使用"discard-changes":true ),除非刪除然后重新要求包。

composer reinstall "*"刪除並再次安裝vendor目錄中的所有包。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM