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

Re: [PATCH 0/2] Update the die() preserve-merges messages to help some users

From
Philip Oakley <philipoakley@iee.email>
Date
Feb 22, 2022, 20:24 UTC
Message-ID
<df47bb75-9684-6896-1e5b-21406c4a549a@iee.email>
In-Reply-To
<8b95ac6e-5e9d-38e4-4729-dbbe4b671ea8@gmail.com>
Hi Phillip,
On 22/02/2022 18:55, Phillip Wood wrote:
Show 20 quoted lines
> Hi Philip
>
> On 22/02/2022 10:33, Johannes Schindelin via GitGitGadget wrote:
>> This small update to the die() preserve-merges messages is a response
>> to the
>> reported edge case in the Git-for-Windows googlegroups thread
>> [https://groups.google.com/g/git-for-windows/c/3jMWbBlXXHM] where
>> even git
>> rebase --continue would die.
>>
>> It is most relevant for Windows because Visual Studio still offers the
>> option to run git pull --preserve, therefore Git for Windows already
>> applied
>> these patches. The improvements are not specific to Windows, though, and
>> should therefore also get into core Git, albeit at a more leisurely
>> pace.
>
> I think the new messages are an improvement, I was wondering how
> difficult it would be to allow the user to run rebase --abort so they
> can at least easily start again with --rebase-merges.

In this case, the user (another Phillip), couldn't run `rebase --continue` without getting a `fatal:` report. A code inspection showed that was one of the first tests so I don't believe they could run `--quit` or `abort` either!

We eventually nailed it down to being an update of Git, after getting into a bad conflict resolution, so the update refused to do any rebase commands! Later they tried downgrading and finishing the rebase that way in the usual 'hack & hope' way. Luckily they had a backup from the time of the update, which was able to confirm the presence of the indicative directory (which is an implementation detail).

If the `rebase abort` was moved earlier in the code, then it might work, but we'd still need to keep the clean-up code for a non-existent option, which is less than ideal .

Philip
Show 23 quoted lines
>
> Best Wishes
>
> Phillip
>
>> This is a companion patch series to
>> https://github.com/git-for-windows/git/pull/3708
>>
>> Philip Oakley (2):
>>    rebase: help user when dying with preserve-merges`
>>    rebase: `preserve` is also a pull option, tell dying users
>>
>>   builtin/rebase.c | 9 +++++++--
>>   1 file changed, 7 insertions(+), 2 deletions(-)
>>
>>
>> base-commit: e6ebfd0e8cbbd10878070c8a356b5ad1b3ca464e
>> Published-As:
>> https://github.com/gitgitgadget/git/releases/tag/pr-1155%2Fdscho%2Fdie_preserve-v1
>> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git
>> pr-1155/dscho/die_preserve-v1
>> Pull-Request: https://github.com/gitgitgadget/git/pull/1155
>
Previous: Phillip Wood
Message 18 of 18 in “Update the die() preserve-merges messages to help some users”
  1. 0/2 Update the die() preserve-merges messages to help some usersJohannes Schindelin via GitGitGadget, Feb 22, 2022
  2. 1/2 rebase: help user when dying with preserve-merges`Philip Oakley via GitGitGadget, Feb 22, 2022
  3. Ævar Arnfjörð BjarmasonFeb 22, 2022
  4. Philip OakleyFeb 22, 2022
  5. Ævar Arnfjörð BjarmasonFeb 23, 2022
  6. Philip OakleyFeb 23, 2022
  7. Ævar Arnfjörð BjarmasonMar 8, 2022
  8. 2/2 rebase: `preserve` is also a pull option, tell dying usersPhilip Oakley via GitGitGadget, Feb 22, 2022
  9. Ævar Arnfjörð BjarmasonFeb 22, 2022
  10. Philip OakleyFeb 22, 2022
  11. Philip OakleyFeb 22, 2022
  12. Ævar Arnfjörð BjarmasonFeb 23, 2022
  13. Philip OakleyMar 4, 2022
  14. Johannes SchindelinMar 7, 2022
  15. Philip OakleyMar 7, 2022
  16. Johannes SchindelinMar 9, 2022
  17. Phillip WoodFeb 22, 2022
  18. Philip OakleyFeb 22, 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.