composerによる変更の破棄:[y、n、v、d、s ,?]は何をしますか


121

何ヶ月も私を悩ませてきた簡単な質問。

バグを修正するために、ベンダーディレクトリに飛び込むこともあります(特に内部ライブラリの場合)。修正を移行してソースパッケージに展開した後composer update company/package、メインプロジェクトに参加して次のように尋ねられます。

Discard changes [y,n,v,d,s,?]

私は上のまともな理解を持っているyし、nが、何についてのドキュメントを見つけることができていないvds?ん?私はいつも当たりますyが、何か役に立つものを逃しているかもしれません。


編集:

  • dオプションを追加(10月'17)

8
使ってみました?か?これはおそらく素晴らしいヘルプメッセージを表示します。
nneonneo 14

2
承知しました。事は、作曲家が更新を行い、ダーティな状態を認識するのに約2分かかり、実際に仕事をしているとき、筋肉メモリキックがヒットしy?数分待たないとヒットする能力がないということです。他の人も頭を掻いているのかと思います。
マークフォックス

1
オプションとしてDが追加されたので、ここに追加するとよいでしょう
Mladen Janjetovic

回答:


188

を選択?すると、詳細が表示されます。

y - discard changes and apply the update
n - abort the update and let you manually clean things up
v - view modified files
d - view local modifications (diff)
s - stash changes and try to reapply them after the update

また、ソースコードを確認することもできます。関連する部分はこちらです。


31

を使用して実行する場合は、ファイルに--no-interaction設定でき、毎回このオプションの入力を求められることはありません。discard-changes: truecomposer.json

または、次を実行:

COMPOSER_DISCARD_CHANGES=true composer install --no-interaction


2
とにかくこのオプションを実行せずに実行する方法はありますか--no-interaction
Jake Sylvestre

3
@JakeSylvestre多分今年後半に、これは同様の問題を持つ他の人のために役に立つかもしれません:stackoverflow.com/a/18812171/1097372
Iyas

@lyasあ、すごい!ありがとう。
Jake Sylvestre 2017

4
破棄変更を制御するためのCOMPOSER_DISCARD_CHANGES=true composer install --no-interaction
環境変数
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.