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

Re: ds/rebase-update-re (was Re: What's cooking in git.git (Jul 2022, #01; Fri, 1))

From
Elijah Newren <newren@gmail.com>
Date
Jul 4, 2022, 16:58 UTC
Message-ID
<CABPp-BEHj6gXe+GNR8cw+UUG27E0Mn-wiBb=Dp=ZgX_2gT915w@mail.gmail.com>
In-Reply-To
<15631ea2-6722-fd24-c8a6-0cee638b0602@github.com>
On Mon, Jul 4, 2022 at 6:26 AM Derrick Stolee <derrickstolee@github.com> wrote:
Show 31 quoted lines
>
> On 7/1/22 5:08 PM, Junio C Hamano wrote:
>
> > * ds/rebase-update-ref (2022-06-28) 8 commits
> >  - rebase: add rebase.updateRefs config option
> >  - rebase: update refs from 'update-ref' commands
> >  - rebase: add --update-refs option
> >  - sequencer: add update-ref command
> >  - sequencer: define array with enum values
> >  - rebase-interactive: update 'merge' description
> >  - branch: consider refs under 'update-refs'
> >  - t2407: test branches currently using apply backend
> >  (this branch uses ds/branch-checked-out.)
> >
> >  "git rebase -i" learns to update branches whose tip appear in the
> >  rebased range.
> >
> >  Will merge to 'next'?
> >  source: <pull.1247.v3.git.1656422759.gitgitgadget@gmail.com>
>
> Please expect at least one more re-roll. Here are the things I
> intend to fix in the next re-roll, which should arrive sometime
> this week.
>
> * Some commit message tweaks.
> * Actually interrupt 'git bisect' and 'git rebase' in the tests.
> * Be careful to update the update-refs file when the user edits
>   the todo file.
> * Consider storing the "before" values in the update-refs file
>   and removing refs whose update-ref steps were removed by the
>   user.

First half sounds good to me. Not sure I understand the second half about "removing refs"; do you mean actually deleting the ref, or just not updating it, or something else?

> * Elijah had a question about focusing on "pick" actions, not
>   "fixup" or "squash" steps. This might be worth marking the
>   option as experimental so we have flexibility in changing the
>   behavior as new workflows are tested against this option.

This sounds good to me. I do sometimes want to fixup or squash into a commit that a branch I depend upon directly points to, so I'm worried your feature may update refs incorrectly without this support.

> * Elijah also had some optimization ideas, but I'm not sure if
>   we should prioritize them here or have them as future
>   improvements after the feature is stable.

You know, thinking about it more, with every single commit, sequencer already updates the index, the working tree, HEAD, and *several* control files. So these optimizations would probably just be lost in the noise. Unless we restructure sequencer.c, it may not be worth implementing these ideas at all. Either way, I'd say this certainly shouldn't hold up this series.

Previous: Junio C HamanoNext: Derrick Stolee
Message 6 of 10 in “What's cooking in git.git (Jul 2022, #01; Fri, 1)”
  1. Junio C HamanoJul 1, 2022
  2. gc/submodule-use-super-prefix & ab/submodule-cleanup (was: What's cooking in git.git (Jul 2022, #01; Fri, 1))Ævar Arnfjörð Bjarmason, Jul 4, 2022
  3. Glen ChooJul 6, 2022
  4. ds/rebase-update-re (was Re: What's cooking in git.git (Jul 2022, #01; Fri, 1))Derrick Stolee, Jul 4, 2022
  5. Junio C HamanoJul 4, 2022
  6. Elijah NewrenJul 4, 2022
  7. Derrick StoleeJul 4, 2022
  8. en/merge-dual-dir-renames-fix (Was: Re: What's cooking in git.git (Jul 2022, #01; Fri, 1))Elijah Newren, Jul 5, 2022
  9. gc/bare-repo-discovery (was Re: What's cooking in git.git (Jul 2022, #01; Fri, 1))Glen Choo, Jul 6, 2022
  10. Junio C HamanoJul 6, 2022

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.