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)
?
? This will probably bring up a nice help message.
y
and have no ability to hit ?
without waiting another couple of minutes. I figure if I'm scratching my head others are too.
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
Success story sharing
--no-interaction
COMPOSER_DISCARD_CHANGES=true composer install --no-interaction