summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2018-07-31 09:21:47 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2018-07-31 13:13:35 +0100
commit8b650aeb481a3a4cb71325b6b7255194589c7612 (patch)
tree8b397d86af563e1b39f59a63a4cc5537e6a0300d
parentec2180ffff14c6e14703a70b4e68861312607f10 (diff)
git-debrebase: Break out resolve_upstream_version (nfc)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rwxr-xr-xgit-debrebase43
1 files changed, 27 insertions, 16 deletions
diff --git a/git-debrebase b/git-debrebase
index 4944529..5d3c742 100755
--- a/git-debrebase
+++ b/git-debrebase
@@ -1162,25 +1162,12 @@ sub do_stitch ($;$) {
stitch($dangling_head, $ffq_prev, $gdrlast, $ffq_prev_commitish, $prose);
}
-sub cmd_new_upstream () {
- # automatically and unconditionally launders before rebasing
- # if rebase --abort is used, laundering has still been done
-
- my %pieces;
+sub resolve_upstream_version ($$) {
+ my ($new_upstream, $version) = @_;
- badusage "need NEW-VERSION [UPS-COMMITTISH]" unless @ARGV >= 1;
-
- # parse args - low commitment
- my $spec_version = shift @ARGV;
- my $new_version = (new Dpkg::Version $spec_version, check => 1);
- fail "bad version number \`$spec_version'" unless defined $new_version;
- if ($new_version->is_native()) {
- $new_version = (new Dpkg::Version "$spec_version-1", check => 1);
- }
- my $new_upstream_version = "$new_version";
+ my $new_upstream_version = "$version";
$new_upstream_version =~ s/-.*?$//;;
- my $new_upstream = shift @ARGV;
if (!defined $new_upstream) {
my @tried;
# todo: at some point maybe use git-deborig to do this
@@ -1198,6 +1185,30 @@ sub cmd_new_upstream () {
}
$new_upstream = git_rev_parse $new_upstream;
+ return ($new_upstream, $new_upstream_version);
+}
+
+sub cmd_new_upstream () {
+ # automatically and unconditionally launders before rebasing
+ # if rebase --abort is used, laundering has still been done
+
+ my %pieces;
+
+ badusage "need NEW-VERSION [UPS-COMMITTISH]" unless @ARGV >= 1;
+
+ # parse args - low commitment
+ my $spec_version = shift @ARGV;
+ my $new_version = (new Dpkg::Version $spec_version, check => 1);
+ fail "bad version number \`$spec_version'" unless defined $new_version;
+ if ($new_version->is_native()) {
+ $new_version = (new Dpkg::Version "$spec_version-1", check => 1);
+ }
+
+ my $new_upstream = shift @ARGV;
+ my $new_upstream_version;
+ ($new_upstream, $new_upstream_version) =
+ resolve_upstream_version $new_upstream, $new_version;
+
record_ffq_auto();
my $piece = sub {