Thread (22 messages) flat view 22 messages, 2 authors, 2017-03-22

Re: [PATCH/RFC 3/3] stash: pass the pathspec argument to git reset

From: Jeff King <hidden>
Date: 2017-03-21 22:13:02

On Tue, Mar 21, 2017 at 09:14:24PM +0000, Thomas Gummerer wrote:
quoted
I don't think read-tree takes pathspecs, so it would have to drop the
"-u" and replace it with checkout-index. I'm confused about why we would
need it in the first place, though. We should have already dealt with
the working tree files in the earlier block, so there should be nothing
to checkout.

The "-u" goes all the way back to 7bedebcaa (stash: introduce 'stash
save --keep-index' option, 2008-06-27). I wonder if it has always been
unnecessary, but we never noticed because it's just a noop.
I do think the "-u" is necessary.  Say we have a repository with
changes in 'foo' and 'bar', where the changes in bar are added to the
index.

Then 'git stash -k' would wipe out the changes in both 'foo' and 'bar'
through 'git reset --hard', but we do want the changes in 'bar' to
still exist on disk, which they wouldn't without the "-u".
Yeah, you're right. It makes me wonder if the "-k" case should be
skipping the "reset --hard". But as this series has shown, this
procedure is sufficiently tricky that it may be a good idea to make the
minimal change.
But I'll replace the "-u" with checkout-index, so we can respect the
pathspec.
That makes sense.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help