chiark / gitweb /
Test suite: tartree-edit: gitfetchinfo: Be a bit more careful
[dgit.git] / tests / tartree-edit
index cecc142c2896e9331f2d19fdea87a87bad054ba6..cdaade35b5e0a7daf2e332ea98c9d5d90c7f7084 100755 (executable)
@@ -128,7 +128,8 @@ tryat_gitfetchinfo () {
        local innerwd="$(echo $play/*)"
 
        git for-each-ref --format='%(refname)' refs/remotes >$play/l
-       perl -ne '
+       perl -w -ne '
+           use strict;
            chomp;
            next unless m#^refs/remotes/([^/]+)/#;
            my $old = $_;
@@ -136,7 +137,8 @@ tryat_gitfetchinfo () {
            my $rhs = $'\'';
            my @ab = split /\+/, $ab;
            next unless @ab == 2;
-           next unless grep { $_ eq "'"$remote"'" } @ab;
+           next unless (grep { $_ eq "'"$remote"'" } @ab) == 1;
+           $remerge{"@ab"} = 1;
            print "update refs/remotes/$_/$rhs $old\n" or die $! foreach @ab;
            print "delete $old\n" or die $!;
        ' <$play/l >$play/unmerge