chiark / gitweb /
wip changes for remote push - implement i_want
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 9 Oct 2013 06:50:42 +0000 (07:50 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 9 Oct 2013 06:50:42 +0000 (07:50 +0100)
TODO
dgit

diff --git a/TODO b/TODO
index 64eace4be9308823488b4ae3648efe13e564be3d..589059736a4e8a84a42a82cd21beaf6cd69e0072 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,5 +1,3 @@
-implement i_want_*
-
 --gpg= etc. @gpg should be in manual
 should pass @gpg to debsign
 --ssh= etc. @ssh should be in manual
diff --git a/dgit b/dgit
index 05e95dfb131e99173554bfc1de260101efe0ab5f..6c1477cc1a2affccefb882dbda8550577096bae9 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -1465,6 +1465,28 @@ sub i_localname_dsc {
     return $dscfn;
 }
 
+sub i_want_signed_tag {
+    defined $i_param{'head'} && defined $dscfn
+       or badproto \*RO, "sequencing error";
+    my $head = $i_param{'head'};
+    die if $head =~ m/[^0-9a-f]/ || $head !~ m/^../;
+
+    push_parse_dsc $i_dscfn, 'remote dsc', 
+
+    push_mktag $head, $i_clogp, $i_tag,
+        $dsc, $i_dscfn,
+        'remote.changes', 'remote changes',
+        'tag.tag';
+
+    return 'tag.tag';
+}
+
+sub i_want_signed_dsc_changes {
+    rename "$i_dscfn.tmp","$i_dscfn" or die "$i_dscfn $!";
+    sign_changes 'remote.changes';
+    return ($i_dscfn, 'remote.changes');
+}
+
 #---------- building etc. ----------
 
 our $version;