Hi Edgar,

On 2015-04-22 10:30, edgar.h...@netapsys.fr wrote:

> When you have a lot of unstaged files, and would like to test what
> happens if you undo some of the changes that you think are unecessary,
> you would rather keep a copy of those changes somewhere.
> 
> For example
> 
> Changed but not updated:
>     M config_test.xml
>     M config_real.xml
> 
> I have changed both config_test.xml and config_real.xml, but I think
> the changes made in config_test.xml are unnecessary. However, I would
> still like to keep them somewhere in case it breaks something.
> 
> In this case for example, I would like to be able to stash only the
> file config_test.xml
> 
> Eg:
> 
> git add config_test.xml
> git stash --staged
> 
> So that after this, my git looks like this:
> 
> Changed but not updated:
>     M config_real.xml
> 
> and my stash contains only the changes introduced in config_test.xml
> 
> `git stash --keep-index` doesn't give the necessary control, because
> it will still stash everything (and create unnecessary merge
> complications if I change the files and apply the stash)

I often have the same problem. How about doing this:

```sh
git add config_real.xml
git stash -k
git reset
```

The difference between our approaches is that I keep thinking of the staging 
area as the place to put changes I want to *keep*, not that I want to forget 
for a moment.

Having said that, I am sympathetic to your cause, although I would rather have 
`git stash [--patch] -- [<file>...]` that would be used like `git add -p` 
except that the selected changes are *not* staged, but stashed instead.

Ciao,
Johannes
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to