* Move the fast forward die to where we will need to make the
synthetic commit, so that the tree equality check is done on the
thing we will actually push.
* Crash if we are trying to do split brain without split build.
(This should never happen.)
* Set split build if we need split brain.
my $format = getfield $dsc, 'Format';
printdebug "format $format\n";
my $format = getfield $dsc, 'Format';
printdebug "format $format\n";
if (madformat($format)) {
# user might have not used dgit build, so maybe do this now:
commit_quilty_patch();
}
if (madformat($format)) {
# user might have not used dgit build, so maybe do this now:
commit_quilty_patch();
}
+
+ die 'xxx fast forward (should not depend on quilt mode, but will always be needed if we did $split_brain)' if $split_brain;
+
check_not_dirty();
changedir $ud;
progress "checking that $dscfn corresponds to HEAD";
check_not_dirty();
changedir $ud;
progress "checking that $dscfn corresponds to HEAD";
runcmd @git, qw(update-ref -m), $cachekey, "refs/$splitbraincache",
$dgitview;
runcmd @git, qw(update-ref -m), $cachekey, "refs/$splitbraincache",
$dgitview;
- die 'xxx fast forward (should not depend on quilt mode, but will always be needed if we did $split_brain)';
changedir '.git/dgit/unpack/work';
}
changedir '.git/dgit/unpack/work';
}
quilt_fixup_multipatch($clogp, $headref, $upstreamversion);
}
quilt_fixup_multipatch($clogp, $headref, $upstreamversion);
}
+ die 'bug' if $split_brain && !$need_split_build_invocation;
+
changedir '../../../..';
runcmd_ordryrun_local
@git, qw(pull --ff-only -q .git/dgit/unpack/work master);
changedir '../../../..';
runcmd_ordryrun_local
@git, qw(pull --ff-only -q .git/dgit/unpack/work master);
+$need_split_build_invocation ||= quiltmode_splitbrain();
+
if (!defined $cleanmode) {
local $access_forpush;
$cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');
if (!defined $cleanmode) {
local $access_forpush;
$cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');