mirror of
https://github.com/git/git.git
synced 2024-11-30 21:44:02 +08:00
215a7ad1ef
As promised, this is the "big tool rename" patch. The primary differences since 0.99.6 are: (1) git-*-script are no more. The commands installed do not have any such suffix so users do not have to remember if something is implemented as a shell script or not. (2) Many command names with 'cache' in them are renamed with 'index' if that is what they mean. There are backward compatibility symblic links so that you and Porcelains can keep using the old names, but the backward compatibility support is expected to be removed in the near future. Signed-off-by: Junio C Hamano <junkio@cox.net>
62 lines
1.4 KiB
Bash
62 lines
1.4 KiB
Bash
#!/bin/sh
|
|
#
|
|
# An example hook script to verify what is about to be committed.
|
|
# Called by git-commit with no arguments. The hook should
|
|
# exit with non-zero status after issuing an appropriate message if
|
|
# it wants to stop the commit.
|
|
#
|
|
# To enable this hook, make this file executable.
|
|
|
|
# This is slightly modified from Andrew Morton's Perfect Patch.
|
|
# Lines you introduce should not have trailing whitespace.
|
|
# Also check for an indentation that has SP before a TAB.
|
|
perl -e '
|
|
my $fh;
|
|
my $found_bad = 0;
|
|
my $filename;
|
|
my $reported_filename = "";
|
|
my $lineno;
|
|
sub bad_line {
|
|
my ($why, $line) = @_;
|
|
if (!$found_bad) {
|
|
print STDERR "*\n";
|
|
print STDERR "* You have some suspicious patch lines:\n";
|
|
print STDERR "*\n";
|
|
$found_bad = 1;
|
|
}
|
|
if ($reported_filename ne $filename) {
|
|
print STDERR "* In $filename\n";
|
|
$reported_filename = $filename;
|
|
}
|
|
print STDERR "* $why (line $lineno)\n";
|
|
print STDERR "$filename:$lineno:$line\n";
|
|
}
|
|
open $fh, "-|", qw(git-diff-index -p -M --cached HEAD);
|
|
while (<$fh>) {
|
|
if (m|^diff --git a/(.*) b/\1$|) {
|
|
$filename = $1;
|
|
next;
|
|
}
|
|
if (/^@@ -\S+ \+(\d+)/) {
|
|
$lineno = $1 - 1;
|
|
next;
|
|
}
|
|
if (/^ /) {
|
|
$lineno++;
|
|
next;
|
|
}
|
|
if (s/^\+//) {
|
|
$lineno++;
|
|
chomp;
|
|
if (/\s$/) {
|
|
bad_line("trailing whitespace", $_);
|
|
}
|
|
if (/^\s* /) {
|
|
bad_line("indent SP followed by a TAB", $_);
|
|
}
|
|
}
|
|
}
|
|
exit($found_bad);
|
|
'
|
|
|