X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=git-debrebase;h=74e50768deaac7d7d43b487254a6aade0dcc1a5e;hp=c353111249ee99edb70d069528e94da938fe8af5;hb=d94ac406e0f237759420caf6eca996c4ffee1ca9;hpb=45abe880e0efbdc3834168f4fd384678e1c30a51 diff --git a/git-debrebase b/git-debrebase index c3531112..74e50768 100755 --- a/git-debrebase +++ b/git-debrebase @@ -494,6 +494,7 @@ sub gbp_pq_export ($$$) { # must be run in a workarea. $bname and patch-queue/$bname # ought not to exist. Leaves you on patch-queue/$bname with # the patches staged but not committed. + # returns 1 if there were any patches printdebug "gbp_pq_export $bname $base $tip\n"; runcmd @git, qw(checkout -q -b), $bname, $base; runcmd @git, qw(checkout -q -b), "patch-queue/$bname", $tip; @@ -503,7 +504,9 @@ sub gbp_pq_export ($$$) { { local ($!,$?); copy('../gbp-pq-err', \*STDERR); } failedcmd @gbp_cmd; } - runcmd @git, qw(add -f debian/patches) if stat_exists 'debian/patches'; + return 0 unless stat_exists 'debian/patches'; + runcmd @git, qw(add -f debian/patches); + return 1; } @@ -1201,8 +1204,8 @@ sub walk ($;$$$) { my ($prose, $info) = @_; my $ms = $cl->{Msg}; chomp $ms; - $info //= ''; - $ms .= "\n\n[git-debrebase$info: $prose]\n"; + confess unless defined $info; + $ms .= "\n\n[git-debrebase $info: $prose]\n"; return (Msg => $ms); }; my $rewrite_from_here = sub { @@ -1283,7 +1286,7 @@ sub walk ($;$$$) { } elsif ($ty eq 'Mixed') { my $queue = sub { my ($q, $wh) = @_; - my $cls = { %$cl, $xmsg->("split mixed commit: $wh part") }; + my $cls = { %$cl, $xmsg->("mixed commit: $wh part",'split') }; push @$q, $cls; }; $queue->(\@brw_cl, "debian"); @@ -1336,12 +1339,12 @@ sub walk ($;$$$) { push @brw_cl, { %$cl, SpecialMethod => 'DgitImportDebianUpdate', - $xmsg->("convert dgit import: debian changes") + $xmsg->("debian changes", 'convert dgit import') }, { %$cl, SpecialMethod => 'DgitImportUpstreamUpdate', $xmsg->("convert dgit import: upstream update", - " anchor") + "anchor") }; $prline->(" Import"); $rewrite_from_here->(\@brw_cl); @@ -1534,7 +1537,7 @@ sub walk ($;$$$) { %$cl, SpecialMethod => 'MergeCreateMergedBreakwaters', $xmsg->('constructed from vanilla merge', - ' merged-breakwater'), + 'merged-breakwater'), }; push @upp_cl, { %$cl, @@ -2198,7 +2201,7 @@ END # Now we have the final new breakwater branch in the index $new_bw = make_commit [ $new_bw ], [ "Update changelog for new upstream $new_upstream_version", - "[git-debrebase: new upstream $new_upstream_version, changelog]", + "[git-debrebase changelog: new upstream $new_upstream_version]", ]; }; @@ -2395,9 +2398,11 @@ sub make_patches_staged ($) { # laundered. my ($secret_head, $secret_bw, $last_anchor) = walk $head; fresh_workarea(); + my $any; in_workarea sub { - gbp_pq_export 'bw', $secret_bw, $secret_head; + $any = gbp_pq_export 'bw', $secret_bw, $secret_head; }; + return $any; } sub make_patches ($) { @@ -2411,7 +2416,7 @@ sub make_patches ($) { read_tree_subdir 'debian/patches', $ptree; $out = make_commit [$head], [ 'Commit patch queue (exported by git-debrebase)', - '[git-debrebase: export and commit patches]', + '[git-debrebase make-patches: export and commit patches]', ]; }; return $out; @@ -2750,7 +2755,7 @@ Import effective orig tree for upstream version $version END This includes the contents of the .orig(s), minus any debian/ directory. -[git-debrebase import-from-dgit-view upstream-import-convert: $version] +[git-debrebase convert-from-dgit-view upstream-import-convert: $version] END ]; push @upstreams, { Commit => $ups_synth, @@ -2784,7 +2789,7 @@ END 'git-debrebase convert-from-dgit-view: drop upstream changes from breakwater', "Drop upstream changes, and delete debian/patches, as part of converting\n". "to git-debrebase format. Upstream changes will appear as commits.", - '[git-debrebase convert-from-dgit-view: drop patches from tree]' + '[git-debrebase convert-from-dgit-view drop-patches]' ]; } $work = make_commit [ $work, $u->{Commit} ], [