diff options
-rwxr-xr-x | Porting/git-find-p4-change | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Porting/git-find-p4-change b/Porting/git-find-p4-change new file mode 100755 index 0000000000..b77795355f --- /dev/null +++ b/Porting/git-find-p4-change @@ -0,0 +1,20 @@ +#!/usr/bin/perl + +die "usage: $0 [git-log-options] num" unless @ARGV; + +my $num = 1; + +for (@ARGV) { + m{^\d+$} && (($change,$_) = ($_,undef)); + m{^-\d+$} && (($num,$_) = (-$_,undef)); +} + +my $grep = "--grep=^p4raw-id:.*\@$change\$"; +@ARGV = grep { defined } @ARGV; + +if ( -t STDOUT or @ARGV ) { + system(qw(git log), $grep, "-$num", "--all", @ARGV); +} +else { + system(qw(git rev-list -1 --all), $grep); +} |