chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
git-debrebase: merge: Fix a $nomerge message
[dgit.git]
/
git-debrebase
diff --git
a/git-debrebase
b/git-debrebase
index 9c444195f66a97d506541cd93db29ad67d5a936a..1e8de52941e10f68a80dc244642925ac0169cbd4 100755
(executable)
--- a/
git-debrebase
+++ b/
git-debrebase
@@
-846,6
+846,8
@@
sub mergedbreakwaters_anchor ($) {
$best_anchor = $panchor
if !defined $best_anchor
or is_fast_fwd $best_anchor, $panchor;
$best_anchor = $panchor
if !defined $best_anchor
or is_fast_fwd $best_anchor, $panchor;
+ fail "inconsistent anchors in merged-breakwaters $p->{CommitId}"
+ unless is_fast_fwd $panchor, $best_anchor;
}
return $best_anchor;
}
}
return $best_anchor;
}
@@
-1130,7
+1132,11
@@
sub walk ($;$$$) {
return $bomb->();
}
die "$ty ?";
return $bomb->();
}
die "$ty ?";
- } elsif ($ty eq 'VanillaMerge' or $ty eq 'MergedBreakwaters') {
+ } elsif ($ty eq 'MergedBreakwaters') {
+ $last_anchor = mergedbreakwaters_anchor $cl;
+ $build_start->(' MergedBreakwaters', $cur);
+ last;
+ } elsif ($ty eq 'VanillaMerge') {
# User may have merged unstitched branch(es). We will
# have now lost what ffq-prev was then (since the later
# pseudomerge may introduce further changes). The effect
# User may have merged unstitched branch(es). We will
# have now lost what ffq-prev was then (since the later
# pseudomerge may introduce further changes). The effect
@@
-1166,9
+1172,6
@@
sub walk ($;$$$) {
printdebug "*** MERGE\n";
printdebug "*** MERGE\n";
- # xxx avoid calling walk without nogenerate when
- # we have a MergedBreakwater; instead call keycommits ?
-
my @bwbcmd = (@git, qw(merge-base));
my @ibcmd = (@git, qw(merge-base --all));
my $might_be_in_bw = 1;
my @bwbcmd = (@git, qw(merge-base));
my @ibcmd = (@git, qw(merge-base --all));
my $might_be_in_bw = 1;
@@
-1196,7
+1199,7
@@
sub walk ($;$$$) {
foreach my $p (@$ps) {
$prline->(" VanillaMerge ".$p->{Ix});
if (!is_fast_fwd $p->{Anchor}, $best_anchor) {
foreach my $p (@$ps) {
$prline->(" VanillaMerge ".$p->{Ix});
if (!is_fast_fwd $p->{Anchor}, $best_anchor) {
- $nomerge->('
DivergentAnchor
');
+ $nomerge->('
divergent anchors
');
} elsif ($p->{Anchor} eq $best_anchor) {
print $report " SameAnchor" if $report;
} else {
} elsif ($p->{Anchor} eq $best_anchor) {
print $report " SameAnchor" if $report;
} else {
@@
-1214,14
+1217,14
@@
sub walk ($;$$$) {
}
if ($ok && $might_be_in_bw) {
}
if ($ok && $might_be_in_bw) {
+ # We could rewrite this to contaion the metadata
+ # declaring it to be MergedBreakwaters, but
+ # unnecessarily rewriting a merge seems unhelpful.
$prline->(" VanillaMerge MergedBreakwaters");
$last_anchor = $best_anchor;
$build_start->('MergedBreakwaters', $cur);
}
$prline->(" VanillaMerge MergedBreakwaters");
$last_anchor = $best_anchor;
$build_start->('MergedBreakwaters', $cur);
}
- $nomerge->("alleged merged-breakwater is not a breakwater")
- unless $ty eq 'VanillaMerge';
-
my $bwb = cmdoutput @bwbcmd;
# OK, now we have a breakwater base, but we need the merge
my $bwb = cmdoutput @bwbcmd;
# OK, now we have a breakwater base, but we need the merge