Today I ran git stash -h on my Windows box to get this response:
usage: git legacy-stash list [<options>]
or: git legacy-stash show [<stash>]
or: git legacy-stash drop [-q|--quiet] [<stash>]
or: git legacy-stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]
or: git legacy-stash branch <branchname> [<stash>]
or: git legacy-stash save [--patch] [-k|--[no-]keep-index] [-q|--quiet]
[-u|--include-untracked] [-a|--all] [<message>]
or: git legacy-stash [push [--patch] [-k|--[no-]keep-index] [-q|--quiet]
[-u|--include-untracked] [-a|--all] [-m <message>]
[-- <pathspec>...]]
or: git legacy-stash clear
I beg your pardon? legacy-stash
? What is going on?
There is ongoing work to port the git stash
and git rebase
programs to be built-ins written in C. They are faster on all systems, but this work is especially valuable for Windows because the programs written in shell are much slower there than on Unix. However, we're still finding a small number of bugs and issues in this work, so this work isn't the default yet.
Git for Windows (and as of 2.20, core Git) allows you to pick which version you'd like to use. Git for Windows calls the shell version legacy-stash
. There's no need for alarm; that's just the version you've always been using, and when the built-in version is ready for production use, you'll be switched over automatically.
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