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

Re: [RFC PATCH v4] rebase: Update invocation of rebase dot-sourced scripts

From
Wink Saville <wink@saville.com>
Date
Mar 23, 2018, 19:06 UTC
Message-ID
<CAKk8isrxTmryumw5EFVcPxx9wUKA=pB3VxvH9VaHPLRraa=4=g@mail.gmail.com>
In-Reply-To
<nycvar.QRO.7.76.6.1803231811530.77@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz>

On Fri, Mar 23, 2018 at 10:12 AM, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:

Show 37 quoted lines
> Hi Wink,
>
> On Thu, 22 Mar 2018, Wink Saville wrote:
>
>> The backend scriptlets for "git rebase" were structured in a
>> bit unusual way for historical reasons.  Originally, it was
>> designed in such a way that dot-sourcing them from "git
>> rebase" would be sufficient to invoke the specific backend.
>>
>> When it was discovered that some shell implementations
>> (e.g. FreeBSD 9.x) misbehaved when exiting with a "return"
>> is executed at the top level of a dot-sourced script (the
>> original was expecting that the control returns to the next
>> command in "git rebase" after dot-sourcing the scriptlet).
>>
>> To fix this issue the whole body of git-rebase--$backend.sh
>> was made into a shell function git_rebase__$backend and then
>> the last statement of the scriptlet would invoke the function.
>>
>> Here the call is moved to "git rebase" side, instead of at the
>> end of each scriptlet.  This give us a more normal arrangement
>> where the scriptlet function library and allows multiple functions
>> to be implemented in a scriptlet.
>>
>> Signed-off-by: Wink Saville <wink@saville.com>
>> Reviewed-by: Junio C Hamano <gitster@pobox.com>
>> Reviewed-by: Eric Sunsine <sunsine@sunshineco.com>
>> ---
>>  git-rebase--am.sh          | 11 -----------
>>  git-rebase--interactive.sh | 11 -----------
>>  git-rebase--merge.sh       | 11 -----------
>>  git-rebase.sh              |  2 ++
>
> The patch makes sense to me.
>
> Thanks,
> Johannes
Junio, Eric and Johannes, thanks for the help!!!

I've created v5 with the two patches, what is the suggested format-patch/send-email command(s)?

Here is one possibility:

git format-patch --cover-letter --rfc --thread -v 5 --to=git@vger.kernel.org --cc=sunshine@sunshineco.com --cc=Johannes.Schindelin@gmx.de -o patches/v5 master..v5-2

If this was the first version then the above would seem to be a reasonable choice. But this is version 5 and maybe I don't need --cover-letter which, I think means I don't want to use --thread. If that's the case should I add --in-reply-to? But that leads to the question. from which message should I get the Message-Id?

More likely I'm totally wrong and should do something completely different, advice appreciated.

-- Wink
Previous: Johannes SchindelinNext: Junio C Hamano
Message 9 of 42 in “rebase-interactive”
  1. rebase-interactiveWink Saville, Mar 23, 2018
  2. rebase-interactive: Simplify pick_on_preserving_mergesWink Saville, Mar 23, 2018
  3. Johannes SchindelinMar 23, 2018
  4. rebase: Update invocation of rebase dot-sourced scriptsWink Saville, Mar 23, 2018
  5. Eric SunshineMar 23, 2018
  6. Junio C HamanoMar 23, 2018
  7. Eric SunshineMar 23, 2018
  8. Johannes SchindelinMar 23, 2018
  9. Wink SavilleMar 23, 2018
  10. Junio C HamanoMar 23, 2018
  11. Wink SavilleMar 23, 2018
  12. 0/8 rebase-interactiveWink Saville, Mar 23, 2018
  13. 1/8 rebase-interactive: simplify pick_on_preserving_mergesWink Saville, Mar 23, 2018
  14. 2/8 rebase: update invocation of rebase dot-sourced scriptsWink Saville, Mar 23, 2018
  15. 3/8 Indent function git_rebase__interactiveWink Saville, Mar 23, 2018
  16. Junio C HamanoMar 23, 2018
  17. Wink SavilleMar 23, 2018
  18. Junio C HamanoMar 23, 2018
  19. Wink SavilleMar 24, 2018
  20. 4/8 Extract functions out of git_rebase__interactiveWink Saville, Mar 23, 2018
  21. Junio C HamanoMar 23, 2018
  22. Eric SunshineMar 24, 2018
  23. 5/8 Add and use git_rebase__interactive__preserve_mergesWink Saville, Mar 23, 2018
  24. 6/8 Remove unused code paths from git_rebase__interactiveWink Saville, Mar 23, 2018
  25. 7/8 Remove unused code paths from git_rebase__interactive__preserve_mergesWink Saville, Mar 23, 2018
  26. 8/8 Remove merges_option and a blank lineWink Saville, Mar 23, 2018
  27. Wink SavilleMar 23, 2018
  28. Junio C HamanoMar 23, 2018
  29. Wink SavilleMar 23, 2018
  30. Wink SavilleMar 24, 2018
  31. Junio C HamanoMar 26, 2018
  32. Jeff HostetlerMar 26, 2018
  33. Junio C HamanoMar 26, 2018
  34. Jeff HostetlerMar 26, 2018
  35. Junio C HamanoMar 27, 2018
  36. Jeff HostetlerMar 27, 2018
  37. Junio C HamanoMar 26, 2018
  38. Jeff HostetlerMar 26, 2018
  39. Wink SavilleMar 26, 2018
  40. Junio C HamanoMar 26, 2018
  41. Johannes SchindelinMar 26, 2018
  42. Junio C HamanoMar 23, 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.