git-svn: handle merge-base failures
Change git-svn to warn and continue when merge-base fails while processing svn merge tickets. merge-base can fail when a partial branch is created and merged back to trunk in svn, because it cannot find a common ancestor between the partial branch and trunk. Signed-off-by: Andrew Myrick <amyrick@apple.com> Acked-by: Sam Vilain <sam@vilain.net> Acked-by: Eric Wong <normalperson@yhbt.net>
This commit is contained in:
parent
1cef6500a9
commit
41c01693ac
19
git-svn.perl
19
git-svn.perl
@ -3158,10 +3158,21 @@ sub find_extra_svn_parents {
|
||||
my $ranges = $ranges{$merge_tip};
|
||||
|
||||
# check out 'new' tips
|
||||
my $merge_base = command_oneline(
|
||||
"merge-base",
|
||||
@$parents, $merge_tip,
|
||||
);
|
||||
my $merge_base;
|
||||
eval {
|
||||
$merge_base = command_oneline(
|
||||
"merge-base",
|
||||
@$parents, $merge_tip,
|
||||
);
|
||||
};
|
||||
if ($@) {
|
||||
die "An error occurred during merge-base"
|
||||
unless $@->isa("Git::Error::Command");
|
||||
|
||||
warn "W: Cannot find common ancestor between ".
|
||||
"@$parents and $merge_tip. Ignoring merge info.\n";
|
||||
next;
|
||||
}
|
||||
|
||||
# double check that there are no missing non-merge commits
|
||||
my (@incomplete) = check_cherry_pick(
|
||||
|
Loading…
Reference in New Issue
Block a user