From: Elijah Newren <newren@xxxxxxxxx> For more discussion about these hooks, their history relative to rebase, and logical consistency between different types of operations, see https://lore.kernel.org/git/CABPp-BG0bFKUage5cN_2yr2DkmS04W2Z9Pg5WcROqHznV3XBdw@xxxxxxxxxxxxxx/ and the links to some threads referenced therein. Signed-off-by: Elijah Newren <newren@xxxxxxxxx> --- git-rebase.txt: add another hook to the hooks section, and explain more I'm particularly interested in opinions on the last sentence added to the manpage, which is based on the thread mentioned in the commit message. Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-749%2Fnewren%2Frebase-and-hooks-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-749/newren/rebase-and-hooks-v1 Pull-Request: https://github.com/git/git/pull/749 Documentation/git-rebase.txt | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt index f7a6033607f..5c518ca0ccf 100644 --- a/Documentation/git-rebase.txt +++ b/Documentation/git-rebase.txt @@ -684,9 +684,15 @@ Hooks ~~~~~ The apply backend has not traditionally called the post-commit hook, -while the merge backend has. However, this was by accident of -implementation rather than by design. Both backends should have the -same behavior, though it is not clear which one is correct. +while the merge backend has. In contrast, the apply backend has +traditionally called the post-checkout hook while the merge backend +has not. However, the calling of these hooks in both cases was by +accident of implementation rather than by design (both backends were +originally implemented as shell scripts and happened to invoke other +commands like 'git checkout' or 'git commit' that would call the +hooks). Both backends should have the same behavior, though it is not +entirely clear which, if any, is correct. We will likely remove both +of these hooks in the future. Interruptability ~~~~~~~~~~~~~~~~ base-commit: 274b9cc25322d9ee79aa8e6d4e86f0ffe5ced925 -- gitgitgadget