I've seen commands like:
git reset e542 -- readme.txt
I understand this command puts in the index the contents of the file readme.txt from commit e542. But what's the --
option doing there?
The git reset man page lists it as optional for the first two forms but I couldn't find what it means.
git reset [-q] [<commit>] [--] <paths>…
git reset (--patch | -p) [<commit>] [--] [<paths>…]
--
separates branch names from file names, in case there is any ambiguity (if you have a branch and a file with the same name). If there are no ambiguities, you don't need the --
.
Also as mentioned by Jonas Wielicki, this allows for file names that start with a -
; these would otherwise be interpreted as command-line options.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With