From: Albert Cui <albertqcui@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: "Derrick Stolee" <stolee@gmail.com>,
"Albert Cui via GitGitGadget" <gitgitgadget@gmail.com>,
git@vger.kernel.org,
"brian m. carlson" <sandals@crustytoothpaste.net>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: Re: [PATCH v2] hooks: propose project configured hooks
Date: Mon, 5 Apr 2021 16:40:24 -0700 [thread overview]
Message-ID: <CAMbkP-SBQMLeM14d9KSnzE44KsfhHPsxWQ1PaskauWPynTJvWQ@mail.gmail.com> (raw)
In-Reply-To: <xmqqmtuc49cm.fsf@gitster.g>
On Mon, Apr 5, 2021 at 4:09 PM Junio C Hamano <gitster@pobox.com> wrote:
>
> Albert Cui <albertqcui@gmail.com> writes:
>
> >> Requirements like these make me think that these repositories would be
> >> better off with a script that configures the hooks after checking if
> >> these things actually exist on the PATH (and installs them if not). I
> >> would lower the priority of this one for now.
> >>
> >
> > As mentioned, for enterprise deployments, this can be solved by administrators
> > installing any necessary software automatically.
> >
> > Otherwise, I think ensuring the tool is installed feels out-of-scope
> > (as written in
> > the doc); it's not like Git makes sure compilers or build tools are
> > installed today,
> > and even today, users could set up Husky hooks that rely on $PATH tools, so
> > we're not introducing a new problem.
>
> I am afraid that this compares apples and oranges.
>
> I may "git clone" and try "make" to find out that I needed a special
> compiler, and that would not be the end of the world. It is
> guaranteed that "git clean -f -x -d" followed by installation of
> necessary toolchain followed by "make" would work. And that is
> partly because "git clone" does not do any more than just clone and
> checkout the initial tree.
>
> If a new version of "git clone" told me "I can install the project
> recommended hooks to use", I answer "yes", and then failed while
> installing and configuring the project-recommended hooks because of
> missing dependencies, then I wouldn't know in what state the result
> would be in. In some projects, it may be enough to just install the
> missing dependencies, and in some others, it may not be enough and I
> have a broken half-configured mess depending on how the "installing
> and configuring" step failed.
I'm a little confused, and maybe it's because we have different
definitions of what
"installing hooks" means. By installing hooks, I meant the addition of
the hook command to the config, e.g the outcome of:
`git config --add hook.pre-commit.command pylint`
This works today; Git won't complain if I don't have pylint installed, so
I don't see how we'd get into a "broken half-configured mess."
It will complain when it tries to execute the hook, and this is where I see it
as the same as the 'I may "git clone" and try "make" to find out that
I needed a special compiler, and that would not be the end of the world' case.
next prev parent reply other threads:[~2021-04-05 23:40 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-18 22:03 [PATCH] hooks: propose repository owner configured hooks Albert Cui via GitGitGadget
2021-03-18 22:29 ` Junio C Hamano
2021-03-18 23:45 ` Albert Cui
2021-03-19 1:28 ` brian m. carlson
2021-03-19 10:27 ` Ævar Arnfjörð Bjarmason
2021-04-06 0:35 ` Albert Cui
2021-04-07 22:47 ` Ævar Arnfjörð Bjarmason
2021-06-21 19:36 ` Jonathan Tan
2021-06-21 20:35 ` Ævar Arnfjörð Bjarmason
2021-03-26 1:43 ` [PATCH v2] hooks: propose project " Albert Cui via GitGitGadget
2021-03-29 23:20 ` Emily Shaffer
2021-04-01 20:02 ` Albert Cui
2021-03-30 15:24 ` Derrick Stolee
2021-04-05 22:45 ` Albert Cui
2021-04-05 23:09 ` Junio C Hamano
2021-04-05 23:40 ` Albert Cui [this message]
2021-04-06 0:13 ` Junio C Hamano
2021-04-06 0:27 ` Albert Cui
2021-04-06 23:15 ` brian m. carlson
2021-04-07 7:53 ` Ævar Arnfjörð Bjarmason
2021-04-07 13:09 ` Derrick Stolee
2021-04-07 18:40 ` Albert Cui
2021-04-07 20:02 ` Junio C Hamano
2021-04-07 22:23 ` Ævar Arnfjörð Bjarmason
2021-04-15 16:52 ` Ed Maste
2021-04-15 19:41 ` Junio C Hamano
2021-04-15 20:37 ` Ed Maste
2021-04-15 20:50 ` Junio C Hamano
2021-04-15 22:28 ` brian m. carlson
2021-04-02 9:59 ` Ævar Arnfjörð Bjarmason
2021-04-05 23:42 ` Albert Cui
2021-04-02 10:30 ` Ævar Arnfjörð Bjarmason
2021-04-03 0:58 ` Albert Cui
2021-04-24 1:38 ` [PATCH v3] " Albert Cui via GitGitGadget
2021-04-28 2:48 ` Junio C Hamano
2021-05-05 19:11 ` [PATCH v4] " Albert Cui via GitGitGadget
2021-06-03 3:31 ` Jonathan Tan
2021-06-03 20:16 ` Albert Cui
2021-06-03 22:10 ` Jonathan Tan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAMbkP-SBQMLeM14d9KSnzE44KsfhHPsxWQ1PaskauWPynTJvWQ@mail.gmail.com \
--to=albertqcui@gmail.com \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=gitster@pobox.com \
--cc=sandals@crustytoothpaste.net \
--cc=stolee@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).