build: ignore scissor line for the commit-msg hook
authorPeter Wu <peter@lekensteyn.nl>
Thu, 9 Jul 2015 15:11:33 +0000 (17:11 +0200)
committerWerner Koch <wk@gnupg.org>
Thu, 23 Jul 2015 12:46:52 +0000 (14:46 +0200)
* build-aux/git-hooks/commit-msg: Stop processing more lines when the
  scissor line is encountered.
--
This allows the command `git commit -v` to work even if the code is
longer than 72 characters. Note that comments are already ignored by the
previous line.

Signed-off-by: Peter Wu <peter@lekensteyn.nl>
build-aux/git-hooks/commit-msg

index 5a697c7..3ca918b 100755 (executable)
@@ -86,11 +86,17 @@ sub check_msg($$)
   2 <= @line && length $line[1]
     and return 'second line must be empty';
 
+  # See git-commit(1), this is the --cleanup=scissors option. Everything
+  # after and including this line gets ignored.
+  my $marker = '# ------------------------ >8 ------------------------';
+
   # Limit line length to allow for the ChangeLog's leading TAB.
   foreach my $line (@line)
     {
       72 < length $line && $line =~ /^[^#]/
         and return 'line longer than 72 characters';
+
+      last if $line eq $marker;
     }
 
   return '';