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

How to execute a command on git am/rebase/cherry pick --abort ?

From
KKKonstantin Kharlamov <hi-angel@yandex.ru>
Date
Jan 18, 2024, 12:53 UTC
Message-ID
<d66ef46827fc7391bd74ece943afa2c5245896d6.camel@yandex.ru>
(please keep me CC'ed, I'm not subscribed)
Hello!

There's a well-known problem of git not fully checking out changes while doing e.g. `git checkout` and similar commands when you have submodules. So e.g. if HEAD changes a submodule commit and you do an interactive rebase to HEAD~2, you may be lucky to find a submodule commit change in `git diff` (because if you don't get lucky, you won't notice that and commit the change to the unrelated HEAD~2).

As a workaround I have a `git submodule update` inside `post-checkout` hook.

Now, the problem is I still often finding myself having the wrong submodule ID, and I tracked down that problem to commands such as `am/rebase/cherry-pick --abort` also not updating the submodule, nor executing `post-checkout`.

I looked through `man githooks` but couldn't find any way to execute a `git submodule update` during these aborts.

Any ideas how to fix these?
Next: Patrick Steinhardt
Message 1 of 5 in “How to execute a command on git am/rebase/cherry pick --abort ?”
  1. Konstantin KharlamovJan 18, 2024
  2. Patrick SteinhardtJan 18, 2024
  3. Konstantin KharlamovJan 18, 2024
  4. Konstantin KharlamovJan 29, 2024
  5. Konstantin KharlamovJan 29, 2024

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.