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

Re: [PATCH] checkout: add 'pre-checkout' hook

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 14, 2009, 05:13 UTC
Message-ID
<7vr5t6lfr0.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1255495525-11254-1-git-send-email-sam.vilain@catalyst.net.nz>
Sam Vilain <sam.vilain@catalyst.net.nz> writes:
Show 24 quoted lines
> Add a simple hook that will run before checkouts.
>
> Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz>
> ---
>  Documentation/githooks.txt |   20 +++++++++++++++-----
>  builtin-checkout.c         |   25 ++++++++++++++++++++++---
>  2 files changed, 37 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/githooks.txt b/Documentation/githooks.txt
> index 06e0f31..8dc3fbf 100644
> --- a/Documentation/githooks.txt
> +++ b/Documentation/githooks.txt
> @@ -143,21 +143,31 @@ pre-rebase
>  This hook is called by 'git-rebase' and can be used to prevent a branch
>  from getting rebased.
>  
> +pre-checkout
> +-----------
>  
> -post-checkout
> -~~~~~~~~~~~~~
> -
> -This hook is invoked when a 'git-checkout' is run after having updated the
> +This hook is invoked when a 'git-checkout' is run after before updating the
"after before"?
Show 17 quoted lines
>  worktree.  The hook is given three parameters: the ref of the previous HEAD,
>  the ref of the new HEAD (which may or may not have changed), and a flag
>  indicating whether the checkout was a branch checkout (changing branches,
>  flag=1) or a file checkout (retrieving a file from the index, flag=0).
> -This hook cannot affect the outcome of 'git-checkout'.
> +This hook can prevent the checkout from proceeding by exiting with an
> +error code.
>  
>  It is also run after 'git-clone', unless the --no-checkout (-n) option is
>  used. The first parameter given to the hook is the null-ref, the second the
>  ref of the new HEAD and the flag is always 1.
>  
> +This hook can be used to perform any clean-up deemed necessary before
> +checking out the new branch/files.
> +
> +post-checkout
> +-----------

This is not about your patch, but the patch text shows that our diff algorithm seems to have a room for improvement. I expected to see a straight insersion of block of text, not touching anything in the original section on post-checkout hook.

Previous: Sam VilainNext: Sam Vilain
Message 4 of 9 in “checkout: add 'pre-checkout' hook”
  1. checkout: add 'pre-checkout' hookSam Vilain, Oct 14, 2009
  2. Jeff KingOct 14, 2009
  3. Sam VilainOct 14, 2009
  4. Junio C HamanoOct 14, 2009
  5. Sam VilainOct 14, 2009
  6. Jeff KingOct 14, 2009
  7. Bert WesargOct 14, 2009
  8. Sam VilainOct 14, 2009
  9. Bert WesargOct 14, 2009

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.