From: Alex Riesen <raa.lkml@xxxxxxxxx> This documents "--verify" option of the commands. It can be used to re-enable the hooks disabled by an earlier "--no-verify" in command-line. Signed-off-by: Alexander Riesen <raa.lkml@xxxxxxxxx> --- Phillip Wood, Fri, Oct 29, 2021 15:32:16 +0200: > On 28/10/2021 16:44, Alex Riesen wrote: > > diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt > > index a3baea32ae..2268787483 100644 > > --- a/Documentation/git-commit.txt > > +++ b/Documentation/git-commit.txt > > @@ -174,9 +174,14 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`. > > -n:: > > --no-verify:: > > - This option bypasses the pre-commit and commit-msg hooks. > > + By default, pre-commit and commit-msg hooks are run. When one of these > > As I suggested yesterday I think this would be better if it kept the "the" > from the original text as you do below for the merge documentation - > s/default, /&the / Updated: -n:: --[no-]verify:: By default, the pre-commit and commit-msg hooks are run. When any of `--no-verify` or `-n` is given, these are bypassed. See also linkgit:githooks[5]. > > --- a/Documentation/merge-options.txt > > +++ b/Documentation/merge-options.txt > > @@ -112,8 +112,9 @@ option can be used to override --squash. > > + > > With --squash, --commit is not allowed, and will fail. > > ---no-verify:: > > - This option bypasses the pre-merge and commit-msg hooks. > > +--[no-]verify:: > > + By default, the pre-merge and commit-msg hooks are run. > > + When `--no-verify` is given, these are bypassed. > > See also linkgit:githooks[5]. > > This text looks good. It would be nice to be consistent when documenting > "--verify" and "--no-verify" so that documentation for commit and merge both > have either a separate entry for each option as you have for commit or a > shared entry as you have here for merge. I'd be tempted to use this form in > the commit documentation. So I did. Regards, Alex Documentation/git-commit.txt | 5 +++-- Documentation/merge-options.txt | 5 +++-- t/t7504-commit-msg-hook.sh | 8 ++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt index a3baea32ae..b27a4c4c34 100644 --- a/Documentation/git-commit.txt +++ b/Documentation/git-commit.txt @@ -173,8 +173,9 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`. (see http://developercertificate.org/ for more information). -n:: ---no-verify:: - This option bypasses the pre-commit and commit-msg hooks. +--[no-]verify:: + By default, the pre-commit and commit-msg hooks are run. + When any of `--no-verify` or `-n` is given, these are bypassed. See also linkgit:githooks[5]. --allow-empty:: diff --git a/Documentation/merge-options.txt b/Documentation/merge-options.txt index 80d4831662..80267008af 100644 --- a/Documentation/merge-options.txt +++ b/Documentation/merge-options.txt @@ -112,8 +112,9 @@ option can be used to override --squash. + With --squash, --commit is not allowed, and will fail. ---no-verify:: - This option bypasses the pre-merge and commit-msg hooks. +--[no-]verify:: + By default, the pre-merge and commit-msg hooks are run. + When `--no-verify` is given, these are bypassed. See also linkgit:githooks[5]. -s <strategy>:: diff --git a/t/t7504-commit-msg-hook.sh b/t/t7504-commit-msg-hook.sh index 31b9c6a2c1..67fcc19637 100755 --- a/t/t7504-commit-msg-hook.sh +++ b/t/t7504-commit-msg-hook.sh @@ -130,6 +130,14 @@ test_expect_success '--no-verify with failing hook' ' ' +test_expect_success '-n followed by --verify with failing hook' ' + + echo "even more" >> file && + git add file && + test_must_fail git commit -n --verify -m "even more" + +' + test_expect_success '--no-verify with failing hook (editor)' ' echo "more stuff" >> file && -- 2.33.0.22.g8cd9218530