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

Re: [PATCH] Rename ".dotest/" to ".git/rebase" and ".dotest-merge" to "rebase-merge"

From
Stephan Beyer <s-beyer@gmx.net>
Date
Jul 23, 2008, 01:13 UTC
Message-ID
<20080723011341.GE5904@leksak.fem-net>
In-Reply-To
<7vbq0pifwq.fsf@gitster.siamese.dyndns.org>
Hi,
Junio C Hamano wrote:
Show 31 quoted lines
> Stephan Beyer <s-beyer@gmx.net> writes:
> > Junio C Hamano wrote:
> >> Olivier Marin <dkr+ml.git@free.fr> writes:
> >> > @@ -203,9 +204,10 @@ then
> >> >  
> >> >  	case "$abort" in
> >> >  	t)
> >> > -		rm -fr "$dotest" &&
> >> > +		git rerere clear &&
> >> >  		git read-tree -m -u ORIG_HEAD &&
> > [...]
> >> diff --git a/git-am.sh b/git-am.sh
> >> index a44bd7a..5cbf8f4 100755
> >> --- a/git-am.sh
> >> +++ b/git-am.sh
> >> @@ -203,9 +203,9 @@ then
> >>  
> >>  	case "$abort" in
> >>  	t)
> >> -		rm -fr "$dotest" &&
> >> -		git read-tree -m -u ORIG_HEAD &&
> >> -		git reset ORIG_HEAD && :
> >> +		git rerere clear
> >> +		git read-tree --reset -u HEAD ORIG_HEAD
> >
> > Perhaps I am confused, but ...
> > Why is there "HEAD" and "ORIG_HEAD" and not only "ORIG_HEAD"?
> 
> Just being a bit defensive -- in this case I think it might be Ok to say
> "read-tree --reset -u ORIG_HEAD", but I haven't checked in a conflicted
> case.
Well, the test suite fails:
* FAIL 4: am --abort goes back after failed am
                        git-am --abort &&
                        git rev-parse HEAD >actual &&
                        git rev-parse initial >expect &&
                        test_cmp expect actual &&
  here>                 test_cmp file-2-expect file-2 &&
  ...                   git diff-index --exit-code --cached HEAD &&
                        test ! -f .git/rr-cache/MERGE_RR
* FAIL 7: am --abort goes back after failed am -3
                        git-am --abort &&
                        git rev-parse HEAD >actual &&
                        git rev-parse initial >expect &&
                        test_cmp expect actual &&
 and here>              test_cmp file-2-expect file-2 &&
                        git diff-index --exit-code --cached HEAD &&
                        test ! -f .git/rr-cache/MERGE_RR
So no reason to be defensive ;)
> If some path was added between ORIG_HEAD (that is where we started from)
> and HEAD (that is where we are and we decide we do not want it), and that
> path is conflicted in the index, a single tree form "read-tree --reset -u
> HEAD" would leave it behind in the working tree, wouldn't it?
Seems so.

The reason of my question was that I *blindly* incorporated the change into sequencer to make it able to work on a dirty working tree and thus to be able to migrate am onto it without losing the ability to apply patches on a dirty working tree.... All am tests applied afterwards, but the sequencer and the rebase-i test suite failed in a place where I didn't expect it. I *then* had a deeper look at the read-tree line and I was wondering what the "HEAD" should achieve. I removed it and all tests passed. (I didn't have t4151 in my branch at that point.)

Now, because t4151 does not pass, I am wondering what's the best thing I could do...

Regards,
  Stephan
-- 
Stephan Beyer <s-beyer@gmx.net>, PGP 0x6EDDD207FCC5040F
Previous: Junio C HamanoNext: Olivier Marin
Message 23 of 37 in “Git rebase failure: .dotest overwritten”
  1. Joe FioriniJul 15, 2008
  2. Stephan BeyerJul 15, 2008
  3. René ScharfeJul 15, 2008
  4. Rename ".dotest/" to ".git/rebase" and ".dotest-merge" to "rebase-merge"Johannes Schindelin, Jul 16, 2008
  5. Linus TorvaldsJul 16, 2008
  6. Junio C HamanoJul 16, 2008
  7. Johannes SchindelinJul 16, 2008
  8. Junio C HamanoJul 16, 2008
  9. Rename ".dotest/" to ".git/rebase" and ".dotest-merge" to "rebase-merge"Johannes Schindelin, Jul 16, 2008
  10. Linus TorvaldsJul 16, 2008
  11. Johannes SchindelinJul 16, 2008
  12. Junio C HamanoJul 16, 2008
  13. Petr BaudisJul 16, 2008
  14. Junio C HamanoJul 16, 2008
  15. Theodore TsoJul 16, 2008
  16. Stephan BeyerJul 16, 2008
  17. Junio C HamanoJul 16, 2008
  18. Olivier MarinJul 19, 2008
  19. Junio C HamanoJul 19, 2008
  20. Junio C HamanoJul 19, 2008
  21. Stephan BeyerJul 22, 2008
  22. Junio C HamanoJul 23, 2008
  23. Stephan BeyerJul 23, 2008
  24. Olivier MarinJul 23, 2008
  25. Stephan BeyerJul 23, 2008
  26. Junio C HamanoJul 23, 2008
  27. am --abort: Add to bash-completion and mention in git-rerere documentationStephan Beyer, Jul 23, 2008
  28. Olivier MarinJul 19, 2008
  29. Stephan BeyerJul 19, 2008
  30. Olivier MarinJul 19, 2008
  31. Junio C HamanoJul 19, 2008
  32. Jakub NarebskiJul 19, 2008
  33. Olivier MarinJul 21, 2008
  34. Junio C HamanoJul 23, 2008
  35. Olivier MarinJul 23, 2008
  36. Junio C HamanoJul 23, 2008
  37. Olivier MarinJul 24, 2008

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.