git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [BUG?] git stash pop results in conflict

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
Mar 24, 2010, 10:34 UTC
Message-ID
<4BA9EAC2.4020707@drmicha.warpmail.net>
In-Reply-To
<SNT124-W41E7349234C70B82E8D6BFC4250@phx.gbl>
Tim Mazid venit, vidit, dixit 24.03.2010 03:01:
Show 35 quoted lines
> 
> Hi,
>  
> I'm not sure if this is a bug or if it should be thus.
>  
> Basically, a 'git stash --keep-index' followed immediately by a 'git stash pop' (no changes made) will result in a conflict.
>  
> Steps to reproduce:
>  
>  
> Put
>  
> "AAA
> BBB
> CCC"
>  
> into file 'test'
>  
> $ git add test
> $ git commit -m "A"
>  
> Append lines
>  
> "DDD
> EEE
> FFF
> GGG"
>  
> into file 'test'
>  
> $ git add -p
>  
> Press 'e' and remove the "FFF" and "GGG" files from the patch, to stage only the "DDD" and "EEE" files.
>  
> $ git stash --keep-index
Right here, git stash show -p shows that the recorded stash is a merge diff:

diff --cc test index 7b0e998,988cecb..83b9202

--- a/test
+++ b/test
@@@ -1,3 -1,5 +1,7 @@@
  AAA
  BBB
  CCC
+ DDD
+ EEE
++FFF
++GGG

The index still has the following (git diff --staged):

diff --git c/test i/test
index 7b0e998..988cecb 100644
--- c/test
+++ i/test
@@ -1,3 +1,5 @@
 AAA
 BBB
 CCC
+DDD
+EEE

> $ git stash pop
>  
> CONFLICT
>  
>  
> I hope that's clear enough.

git diff shows the conflict:

diff --cc test
index 988cecb,83b9202..0000000
--- i/test
+++ w/test
@@@ -3,3 -3,5 +3,8 @@@ BB
  CCC
  DDD
  EEE
++<<<<<<< Updated upstream
++=======
+ FFF
+ GGG
++>>>>>>> Stashed changes

According to the example in the man page, I would have thought that
committing between save and pop would help, but it produces the same
problem. pop --index doesn't help either. Do you happen to know whether
this used to work?

Michael
Previous: Tim Mazid
Message 2 of 2 in “[BUG?] git stash pop results in conflict”
  1. Tim MazidMar 24, 2010
  2. Michael J GruberMar 24, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.