threads / discuss / 47389

'git worktree add' does not fire post-checkout hook

Subject: 'git worktree add' does not fire post-checkout hook

## tl;dr

3 messages between Dec 6, 2017 and Dec 7, 2017.

replies: 2people: 2as markdown or json

Gumbel, Matthew K· Dec 6, 2017, 21:00 UTC · lore
Hello all,
I've noticed that when I run 'git worktree add /path/to/new/tree', the post-checkout hook does not fire, even though the worktree manpage explicitly states that "worktree add" will, "Create <path> and checkout <branch> into it."
Is this the intended behavior? Seems like maybe a bug, but I'm not sure.

Thanks Matt

Eric Sunshine· Dec 6, 2017, 21:45 UTC · re: Gumbel, Matthew K · lore

Re: 'git worktree add' does not fire post-checkout hook

On Wed, Dec 6, 2017 at 4:00 PM, Gumbel, Matthew K <matthew.k.gumbel@intel.com> wrote:

Show 7 quoted lines
> I've noticed that when I run 'git worktree add /path/to/new/tree',
> the post-checkout hook does not fire, even though the worktree
> manpage explicitly states that "worktree add" will, "Create <path>
> and checkout <branch> into it."
>
> Is this the intended behavior? Seems like maybe a bug, but I'm not
> sure.

Seems like an oversight. Given that 'git worktree' is like a cross of 'git clone' and 'git checkout', both of which run that hook, it seems reasonable that 'git-worktree' should do so, as well.

If you'd like to get your feet wet at contributing to the Git project, this might be a good first dip, as it looks like an easy fix (a one- or two-liner). The only thing which needs a bit of care is to skip the hook when --no-checkout is specified. Other than that, 'githooks' documentation would need an update to mention that git-worktree also runs the hook, and t2025-worktree-add.sh would want a couple new tests (which would probably be the most complex part of the patch).

Eric Sunshine· Dec 7, 2017, 10:19 UTC · re: Eric Sunshine · lore

Re: 'git worktree add' does not fire post-checkout hook

On Wed, Dec 6, 2017 at 4:45 PM, Eric Sunshine <sunshine@sunshineco.com> wrote:
Show 17 quoted lines
> On Wed, Dec 6, 2017 at 4:00 PM, Gumbel, Matthew K
> <matthew.k.gumbel@intel.com> wrote:
>> I've noticed that when I run 'git worktree add /path/to/new/tree',
>> the post-checkout hook does not fire, even though the worktree
>> manpage explicitly states that "worktree add" will, "Create <path>
>> and checkout <branch> into it."
>>
>> Is this the intended behavior? Seems like maybe a bug, but I'm not
>> sure.
>
> If you'd like to get your feet wet at contributing to the Git project,
> this might be a good first dip, as it looks like an easy fix (a one-
> or two-liner). The only thing which needs a bit of care is to skip the
> hook when --no-checkout is specified. Other than that, 'githooks'
> documentation would need an update to mention that git-worktree also
> runs the hook, and t2025-worktree-add.sh would want a couple new tests
> (which would probably be the most complex part of the patch).

I worked up a patch to fix this oversight which I'll try to send out later today.

← back to recent threads