Re: [PATCH v2] githooks: discuss Git operations in foreign repositories
- From
- Preston Tunnell Wilson <prestontunnellwilson@gmail.com>
- Date
- Jan 9, 2023, 20:12 UTC
- Message-ID
- <CAC-j02NxVbqu+TQvNgbwFtxmXTZBAJtG60BR+yfXcT9ubSn-jA@mail.gmail.com>
- In-Reply-To
- <pull.1457.v2.git.1673293508399.gitgitgadget@gmail.com>
On Mon, Jan 9, 2023 at 1:45 PM Eric Sunshine via GitGitGadget <gitgitgadget@gmail.com> wrote:
Show 22 quoted lines
> Documentation/githooks.txt | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/Documentation/githooks.txt b/Documentation/githooks.txt
> index a16e62bc8c8..62908602e7b 100644
> --- a/Documentation/githooks.txt
> +++ b/Documentation/githooks.txt
> @@ -27,6 +27,18 @@ repository. An exception are hooks triggered during a push ('pre-receive',
> 'update', 'post-receive', 'post-update', 'push-to-checkout') which are always
> executed in $GIT_DIR.
>
> +Environment variables, such as `GIT_DIR`, `GIT_WORK_TREE`, etc., are exported
> +so that Git commands run by the hook can correctly locate the repository. If
> +your hook needs to invoke Git commands in a foreign repository or in a
> +different working tree of the same repository, then it should clear these
> +environment variables so they do not interfere with Git operations at the
> +foreign location. For example:
> +
> +------------
> +local_desc=$(git describe)
> +foreign_desc=$(unset $(git rev-parse --local-env-vars); git -C ../foreign-repo describe)
> +------------This looks good to me! Thank you! (And I'm sorry about top-posting *again*! I think I have the hang of it now.)