chiark / gitweb /
dgit.1: drop remark about sbuild not building arch-independent
[dgit.git] / git-debrebase
index 06f56d872abe5bcf98a966ae61bf2d2080a7a49a..781435861ecb05b1c816a440364425746abae6f7 100755 (executable)
@@ -1973,7 +1973,7 @@ sub cmd_new_upstream () {
        $new_version = (new Dpkg::Version "$spec_version-1", check => 1);
     }
 
-    my $new_upstream = shift @ARGV;
+    my $new_upstream = (@ARGV && $ARGV[0] !~ m{^-}) ? shift @ARGV : undef;
     my $new_upstream_version = upstreamversion  $new_version;
     my $new_upstream_used;
     ($new_upstream, $new_upstream_used) =
@@ -2697,10 +2697,11 @@ END
     if (!@upstreams) {
        if ($do_tags) {
            my @tried;
-           my $ups_tag = upstream_commitish_search $version, \@tried;
-           if ($ups_tag) {
-               my $this = f_ "git tag %s", $tried[-1];
-               push @upstreams, { Commit => $ups_tag,
+           my ($ups_tag, $ups_rev) =
+               upstream_commitish_search $version, \@tried;
+           if ($ups_rev) {
+               my $this = f_ "git tag %s", $ups_tag;
+               push @upstreams, { Commit => $ups_rev,
                                   Source => $this,
                                 };
            } else {
@@ -2949,7 +2950,7 @@ getoptions_main
           'experimental-merge-resolution!', \$opt_merges,
           '-i:s' => sub {
               my ($opt,$val) = @_;
-              badusage f_ "%s: no cuddling to -i for git-rebase", $us
+              badusage f_ "%s: with git-debrebase, get-rebase -i option may only be followed by more options (as separate arguments)", $us
                   if length $val;
               confess if $opt_defaultcmd_interactive; # should not happen
               $opt_defaultcmd_interactive = [ qw(-i) ];