Thread (3 messages) flat view 3 messages, 3 authors, 2021-10-12

Re: [PATCH 03/11] reset_head(): don't run checkout hook if there is an error

From: Junio C Hamano <hidden>
Date: 2021-10-01 20:52:52

Possibly related (same subject, not in this thread)

"Phillip Wood via GitGitGadget" [off-list ref] writes:
From: Phillip Wood <redacted>

The hook should only be run if the worktree and refs were successfully
updated.
OK.  This is a behaviour change visible to end-users, and deserves a
mention in the release notes.

 - When "git rebase" attempted to check out a branch (or detached
   the HEAD) to work on, we used to always call the "post-checkout"
   hook, even if the checkout failed to update the ref.  The hook is
   no longer called if the checkout fails.

or something.

Again, can the bug this step fixes be protected with a new test in
t/ please?
quoted hunk
Signed-off-by: Phillip Wood <redacted>
---
 reset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/reset.c b/reset.c
index fc4dae3fd2d..5abb1a5683e 100644
--- a/reset.c
+++ b/reset.c
@@ -125,7 +125,7 @@ reset_head_refs:
 			ret = create_symref("HEAD", switch_to_branch,
 					    reflog_head);
 	}
-	if (run_hook)
+	if (!ret && run_hook)
 		run_hook_le(NULL, "post-checkout",
 			    oid_to_hex(orig ? orig : null_oid()),
 			    oid_to_hex(oid), "1", NULL);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help