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

Re: [PATCH v2 1/1] builtin rebase: prepare for builtin rebase -i

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 29, 2018, 22:40 UTC
Message-ID
<xmqq5zzs94qb.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<5403014be738425e942a9bc1ca2029dd8d2137bb.1535553074.git.gitgitgadget@gmail.com>

"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com> writes:

Show 6 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
>
> The builtin rebase and the builtin interactive rebase have been
> developed independently, on purpose: Google Summer of Code rules
> specifically state that students have to work on independent projects,
> they cannot collaborate on the same project.

A much better description, especially without the less relevant "the reason probably is..." omitted from here. The author's personal guess, while adding it does not help understanding what is already in the above paragraph an iota, is still a fine reading material in the cover letter 0/1, though.

Show 15 quoted lines
> One fallout is that the rebase-in-c and rebase-i-in-c patches cause no
> merge conflicts but a royal number of tests in the test suite to fail.
>
> It is easy to explain why: rebase-in-c was developed under the
> assumption that all rebase backends are implemented in Unix shell script
> and can be sourced via `. git-rebase--<backend>`, which is no longer
> true with rebase-i-in-c, where git-rebase--interactive is a hard-linked
> builtin.
>
> This patch fixes that.
>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
>  builtin/rebase.c | 81 ++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 81 insertions(+)
Will replace by doing:
    $ git checkout js/rebase-in-c-5.5-work-with-rebase-i-in-c
    $ git checkout HEAD^
    $ git am -s mbox
    $ git range-diff @{-1}...
    $ git checkout -B @{-1}
    $ git checkout pk/rebase-i-in-c-6-final
    $ git rebase --onto js/rebase-in-c-5.5-work-with-rebase-i-in-c \
          js/rebase-in-c-5.5-work-with-rebase-i-in-c@{1} HEAD^0
    $ git range-diff @{-1}...
    $ git checkout -B @{-1}

to update the two topics and then rebuilding the integration branches the usual way. I also need to replace the "other" topic used in this topic, so the actual procedure would be a bit more involved than the above, though.

Thanks.
Previous: Johannes Schindelin via GitGitGadgetNext: Johannes Schindelin
Message 14 of 22 in “Teach the builtin rebase about the builtin interactive rebase”
  1. 0/1 Teach the builtin rebase about the builtin interactive rebaseJohannes Schindelin via GitGitGadget, Aug 22, 2018
  2. 1/1 builtin rebase: prepare for builtin rebase -iJohannes Schindelin via GitGitGadget, Aug 22, 2018
  3. Junio C HamanoAug 22, 2018
  4. Jonathan NiederAug 23, 2018
  5. Johannes SchindelinAug 25, 2018
  6. Junio C HamanoAug 27, 2018
  7. Johannes SchindelinAug 28, 2018
  8. Junio C HamanoAug 28, 2018
  9. Johannes SchindelinAug 29, 2018
  10. Jonathan NiederAug 28, 2018
  11. Johannes SchindelinAug 29, 2018
  12. 0/1 Teach the builtin rebase about the builtin interactive rebaseJohannes Schindelin via GitGitGadget, Aug 29, 2018
  13. 1/1 builtin rebase: prepare for builtin rebase -iJohannes Schindelin via GitGitGadget, Aug 29, 2018
  14. Junio C HamanoAug 29, 2018
  15. Johannes SchindelinAug 30, 2018
  16. Jeff KingAug 30, 2018
  17. Johannes SchindelinAug 31, 2018
  18. Jeff KingAug 31, 2018
  19. 0/1 Teach the builtin rebase about the builtin interactive rebaseJohannes Schindelin via GitGitGadget, Oct 5, 2018
  20. 1/1 builtin rebase: prepare for builtin rebase -iJohannes Schindelin via GitGitGadget, Oct 5, 2018
  21. Junio C HamanoOct 6, 2018
  22. Johannes SchindelinOct 12, 2018

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.