diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2019-09-05 16:34:33 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2019-09-05 18:15:20 +0100 |
commit | 272a3704ff3cc3d3fbb2df40a953068160b9f44b (patch) | |
tree | 796756d74d94ed3bd40fa84cbef8da4d8bf847d1 /dgit | |
parent | db8abe2a9751ce42afecb482fa0203ea6e538bbb (diff) |
dgit: Fail early when the archive/ tag already exists.
Suggest using a new version number.
We need a new --force option to override this check.
Closes: #935802
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -102,6 +102,7 @@ our %forceopts = map { $_=>0 } qw(unrepresentable unsupported-source-format dsc-changes-mismatch changes-origs-exactly uploading-binaries uploading-source-only + reusing-version import-gitapply-absurd import-gitapply-no-absurd import-dsc-with-dgit-field); @@ -4601,6 +4602,20 @@ END confess unless !!$made_split_brain == do_split_brain(); + my $tagname = debiantag_new $cversion, access_nomdistro(); + if (!(forceing[qw(reusing-version)]) && git_get_ref "refs/tags/$tagname") { + supplementary_message ''; + print STDERR f_ <<END, $cversion; + +Version %s has already been tagged (pushed?) +If this was a failed (or incomplete or rejected) upload by you, just +add a new changelog stanza for a new version number and try again. +END + fail f_ <<END, $tagname; +Tag %s already exists. +END + } + changedir $playground; progress f_ "checking that %s corresponds to HEAD", $dscfn; runcmd qw(dpkg-source -x --), |