chiark / gitweb /
git_get_ref: Move to Dgit.pm and reimplement
[dgit.git] / dgit
diff --git a/dgit b/dgit
index c6a3596605fd9657c17f877ad8f7e733e902f8db..42f9f457332655cae0832baec4c03c4029fcad50 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -667,23 +667,6 @@ sub parsechangelog {
     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: $!";
@@ -1271,18 +1254,6 @@ sub ensure_we_have_orig () {
     }
 }
 
-sub is_fast_fwd ($$) {
-    my ($ancestor,$child) = @_;
-    my @cmd = (@git, qw(merge-base), $ancestor, $child);
-    my $mb = cmdoutput_errok @cmd;
-    if (defined $mb) {
-       return git_rev_parse($mb) eq git_rev_parse($ancestor);
-    } else {
-       $?==256 or failedcmd @cmd;
-       return 0;
-    }
-}
-
 sub git_fetch_us () {
     runcmd_ordryrun_local @git, qw(fetch),access_giturl(),fetchspec();
 }
@@ -1679,7 +1650,7 @@ sub dopush ($) {
 
     if ($forceflag && defined $lastpush_hash) {
        git_for_each_tag_referring($lastpush_hash, sub {
-           my ($objid,$fullrefname,$tagname) = @_;
+           my ($objid,$refobjid,$fullrefname,$tagname) = @_;
            responder_send_command("supersedes $fullrefname=$objid");
            $supersedes{$fullrefname} = $objid;
        });