If you search the internet for "git stash only unstaged changes" you can find much misleading information about what "git stash --keep-index" does. However, it is my opinion that the --keep-index option is broken, in that it doesn't do what 90% of people want it to do - that is, stash only the unstaged changes and not include the staged changes in the stash. You can find many hacks to work around this limitation, none of which are very satisfactory.
It was pointed out by some commenters on Stack Overflow that the examples given in the documentation at https://git-scm.com/docs/git-stash imply that the intended behaviour of "git stash --keep-index" is to stash only the unstaged changes. Based on that, they reason that it's actually a bug. I'm not sure that's true, but I find the existing behaviour of "--keep-index" puzzling because I can't think of when I would use it (whereas stashing only unstaged changes is a feature I would frequently use). Is it possible that --keep-index could be fixed/improved/modified to stash only the unstaged changes, or alternatively a new option introduced which does this? -- Daryl van den Brink Software Engineer Maptek | 31 Flemington Street, Glenside, SA 5065, Australia Tel: +61-8 8338 9222 | Dir: +61-8 8338 9222 | Fax: +61-8 8338 9229 daryl.vandenbr...@maptek.com.au | www.maptek.com