composer discard changes: what do the [y,n,v,d,s,?] do
Simple question that's been bugging me for months.
Occasionally I'll dive into the vendors directory to fix a bug (especially for our internal libs). After migrating and deploying the fix back to the source package, I'll composer update company/package
in the main project and am asked:
Discard changes [y,n,v,d,s,?]
I have a decent grasp on y
and n
but haven't been able to find documentation about what v
, d
, s
, ?
do? I always hit y
but maybe I'm missing out on something useful.
Edits:
- added
d
option (oct '17)
Choosing ?
shows you the details:
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
You can also check the source code, the relevant part is here.
If you run with the --no-interaction
, you can set discard-changes: true
in composer.json
file and you wont get prompted for this option every time.
Or, run:
COMPOSER_DISCARD_CHANGES=true composer install --no-interaction