Re: Stashing untracked files
- From
- Neil Macneale <mac4-git@theory.org>
- Date
- Sep 30, 2007, 03:59 UTC
- Message-ID
- <46FF1F1E.2050000@theory.org>
- In-Reply-To
- <Pine.LNX.4.64.0709292259070.28395@racer.site>
Johannes Schindelin wrote:
Show 18 quoted lines
> Hi, > > [please do not cull me from the Cc: list, especially if you quote me.] > > On Sat, 29 Sep 2007, Neil Macneale wrote: > >> Performing an add would require me to remove those file from the index >> at a later date in the event that I don't want to commit them on the >> next commit. > > Wrong. > > If you "git add <new-file>" and then "git stash", it will no longer have > the file in the index. Instead, the index will agree with the HEAD (which > does not have <new-file>). > > Ciao, > Dscho
To be a little more clear, this is why I'd like to stash untracked files.
$ <hack hack> # source tree is a mess
$ git stash -u # stash everything, even untracked files. I never
# suggesting modifying the default behavior.
$ <fix bug>
$ git commit -a
$ git stash apply
$ hack some more
$ git add file1 file2 # I'm ready for some things to be committed,
# but my source tree is still a mess.
$ git commitTo do what you are suggesting would be something like this (correct me if I'm wrong):
$ <hack hack>
$ git add . # Additional step, not a big deal.
$ git stash
$ <fix bug>
$ git commit -a
$ git stash apply
$ git reset HEAD <all file I don't actually need to add but was forced
to add in step above.>
# What concerns me is that I may not reset some files
# that need to be reset, or reset other ones which
# should not be reset. This is the headache I want to
# avoid.
$ <hack hack>
$ git add file1 file2
$ git commitgit stash is an acknowledgment that not everything needs to be committed, and sometimes working source trees are messy. Prior to the stash command, I just accepted that I'd need to commit everything and do some maintenance to un-commit those changes. stash is awesome for me and the realities of the way I need to work. IMHO, it would be the best thing since sliced bread if it handled untracked files.
If this is really just a problem for me, I can write a shell script to do the dirty work. I just wonder if it is a common enough use case that it merits support in the tool itself.
Cheers, Neil