NHDT substitution version 2.

Re-run nhgitset.pl to install.
"perldoc DEVEL/hooksdir/nhsub" for details.  General docs still to come.
Quick notes:
- "git nhsub" lets you apply substitutions to a file without involving any
  version control.
- When doing nhadd/nhcommit, the working directory WILL reflect the results
  of the substitutions.
Let's see what this breaks.
This commit is contained in:
keni
2015-03-31 09:50:02 -04:00
parent cbd1657976
commit 8ee2d5976e
18 changed files with 435 additions and 41 deletions
Executable → Regular
+7 -2
View File
@@ -1,14 +1,19 @@
#!/usr/bin/perl
# wrapper for nhadd and nhcommit aliases
# $NHDT-Date$
# $NHDT-Date: 1427408239 2015/03/26 22:17:19 $
%ok = map { $_ => 1 } ('add', 'commit');
die "Bad subcommand '$ARGV[0]'" unless $ok{$ARGV[0]};
# we won't fail on a failure, so just system()
$rv = system('.git/hooks/nhsub',"--$ARGV[0]",@ARGV[1..$#ARGV]);
if($rv){
print "warning: nhsub failed: $rv $!\n";
}
if(length $ENV{GIT_PREFIX}){
chdir($ENV{GIT_PREFIX}) or die "Can't chdir $ENV{GIT_PREFIX}: $!";
}
$ENV{NHMODE} = 1;
exec "git", @ARGV or die "Can't exec git: $!";