chiark / gitweb /
New approach to replay prevention - WIP
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 1e348f366858c775bb9a31bffb567fc513f03806..759df20e5df761a58e05418538283e48003ebb07 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -667,23 +667,6 @@ sub parsechangelog {
     return $c;
 }
 
     return $c;
 }
 
-sub git_get_ref ($) {
-    my ($refname) = @_;
-    my $got = cmdoutput_errok @git, qw(show-ref --), $refname;
-    if (!defined $got) {
-       $?==256 or fail "git show-ref failed (status $?)";
-       printdebug "ref $refname= [show-ref exited 1]\n";
-       return '';
-    }
-    if ($got =~ m/^(\w+) \Q$refname\E$/m) {
-       printdebug "ref $refname=$1\n";
-       return $1;
-    } else {
-       printdebug "ref $refname= [no match]\n";
-       return '';
-    }
-}
-
 sub must_getcwd () {
     my $d = getcwd();
     defined $d or fail "getcwd failed: $!";
 sub must_getcwd () {
     my $d = getcwd();
     defined $d or fail "getcwd failed: $!";
@@ -1667,9 +1650,9 @@ sub dopush ($) {
 
     if ($forceflag && defined $lastpush_hash) {
        git_for_each_tag_referring($lastpush_hash, sub {
 
     if ($forceflag && defined $lastpush_hash) {
        git_for_each_tag_referring($lastpush_hash, sub {
-           my ($objid,$refobjid,$fullrefname,$tagname) = @_;
-           responder_send_command("supersedes $fullrefname=$objid");
-           $supersedes{$fullrefname} = $objid;
+           my ($tagobjid,$refobjid,$fullrefname,$tagname) = @_;
+           responder_send_command("supersedes $fullrefname=$tagobjid");
+           $supersedes{$fullrefname} = $tagobjid;
        });
     }
 
        });
     }