git-svn: un-break "git svn rebase" when log.abbrevCommit=true
Change git-svn to use git-rev-list(1) instead of git-log(1) since the latter is porcelain that'll cause "git svn rebase" to fail completely if log.abbrevCommit is set to true in the configuration. Without this patch the code will fail to parse a SHA1, and then just spew a bunch of "Use of uninitialized value $hash in string eq" warnings at "if ($c && $c eq $hash) { ..." and never do anything useful. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Helped-by: Jonathan Nieder <jrnieder@gmail.com> Acked-by: Eric Wong <normalperson@yhbt.net>
Ævar Arnfjörð Bjarmason committed
Feb 12, 2012 at 00:23 UTC
83cf21f9852f22f5a46a48e3b636ecc6403a717e
1 file changed
+1
-2
git-svn.perl
+1
-2
@@ -1878,8 +1878,7 @@ sub cmt_sha2rev_batch {
1878
1879
sub working_head_info {
1880
my ($head, $refs) = @_;
1881
- my @args = qw/log --no-color --no-decorate --first-parent
1882
- --pretty=medium/;
1881
+ my @args = qw/rev-list --first-parent --pretty=medium/;
1882
my ($fh, $ctx) = command_output_pipe(@args, $head);
1883
my $hash;
1884
my %max;