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

Re: [PATCH] rebase -i: correctly remember --root flag across --continue

From
Thomas Rast <trast@student.ethz.ch>
Date
Jan 26, 2009, 21:28 UTC
Message-ID
<200901262228.13104.trast@student.ethz.ch>
In-Reply-To
<7veiyp4w2m.fsf@gitster.siamese.dyndns.org>
Junio C Hamano wrote:
Show 6 quoted lines
> Thomas Rast <trast@student.ethz.ch> writes:
> > +	GIT_EDITOR=: test_must_fail git rebase -i --root --onto master &&
> 
> Maybe I am misrecalling things but didn't we have reports from people on
> some platforms that single-shot exporting of the environment like this one
> does not work for them?

Then that deserves a fix, though I should point out that the original patches (now on master) have the same code in them.

[So many quirks and so little time!]
Show 23 quoted lines
> > +sed 's/#/ /g' > expect-conflict-p <<'EOF'
> > +*   Merge branch 'third' into other
> > +|\##
> > +| * 6
> > +* |   Merge branch 'side' into other
> > +|\ \##
> > +| * | 5
> > +* | | 4
> > +|/ /##
> > +* | 3
> > +|/##
> > +* conflict
> > +* 2
> > +* 1
> > +EOF
> 
> I do not like this very much.  Future improvements of the graph drawing
> algorithm (one obvious "flaw" you are exposing by the above is that it has
> trailing whitespaces that can be trimmed, and somebody else may be
> inclined to fix) would break the expectation this test vector has.
> 
> Do you have to compare the topology this way, or are there other more
> reliable ways?

It would certainly be possible to test the SHA1 of the resulting branch tip, but t/README says I shouldn't. Or we could spell it out as a series of 'parent of X is Y' and 'message of Y is foo' tests, which seems rather messy.

The above approach at least has the advantage that a test failure due to format change can be diagnosed very quickly just from the diff that is shown with -v.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch
Previous: Jeff KingNext: Junio C Hamano
Message 11 of 22 in “rebase -i --root cleanups”
  1. 0/2 rebase -i --root cleanupsJohannes Schindelin, Jan 25, 2009
  2. 1/2 rebase -i --root: simplify codeJohannes Schindelin, Jan 25, 2009
  3. Thomas RastJan 25, 2009
  4. Thomas RastJan 25, 2009
  5. Junio C HamanoJan 26, 2009
  6. rebase -i: correctly remember --root flag across --continueThomas Rast, Jan 26, 2009
  7. Junio C HamanoJan 26, 2009
  8. Junio C HamanoJan 26, 2009
  9. Jeff KingJan 26, 2009
  10. Jeff KingJan 26, 2009
  11. Thomas RastJan 26, 2009
  12. Junio C HamanoJan 27, 2009
  13. Junio C HamanoJan 26, 2009
  14. Thomas RastJan 30, 2009
  15. 1/2 t3412: clean up GIT_EDITOR usageThomas Rast, Jan 30, 2009
  16. 2/2 t3412: use log|name-rev instead of log --graphThomas Rast, Jan 30, 2009
  17. Johannes SchindelinFeb 1, 2009
  18. Thomas RastFeb 2, 2009
  19. Johannes SchindelinJan 26, 2009
  20. 2/2 rebase -i --root: fix check for number of argumentsJohannes Schindelin, Jan 25, 2009
  21. Thomas RastJan 26, 2009
  22. Johannes SchindelinJan 26, 2009

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.