update_head $old_head, $new_head, "stitch: $prose";
}
-sub do_stitch ($) {
- my ($prose) = @_;
+sub do_stitch ($;$) {
+ my ($prose, $unclean) = @_;
my ($ffq_prev, $gdrlast, $ffq_prev_commitish) = ffq_prev_info();
if (!$ffq_prev_commitish) {
}
my $dangling_head = get_head();
- keycommits $dangling_head, \&snag, \&snag, \&snag;
+ keycommits $dangling_head, $unclean,$unclean,$unclean;
stitch($dangling_head, $ffq_prev, $gdrlast, $ffq_prev_commitish, $prose);
}
my $prose = 'stitch';
GetOptions('prose=s', \$prose) or die badusage("bad options to stitch");
badusage "no arguments allowed" if @ARGV;
- do_stitch($prose);
+ do_stitch $prose, \&snag;
}
+sub cmd_prepush () { cmd_stitch(); }
sub cmd_quick () {
badusage "no arguments allowed" if @ARGV;
do_launder_head 'launder for git-debrebase quick';
- do_stitch 'quick';
+ do_stitch 'quick', \&snag;
+}
+
+sub cmd_conclude () {
+ my ($ffq_prev, $gdrlast, $ffq_prev_commitish) = ffq_prev_info();
+ if (!$ffq_prev_commitish) {
+ fail "No ongoing git-debrebase session." unless $opt_noop_ok;
+ return;
+ }
+ my $dangling_head = get_head();
+
+ badusage "no arguments allowed" if @ARGV;
+ do_launder_head 'launder for git-debrebase quick';
+ do_stitch 'quick', \&snag;
}
sub cmd_convert_from_gbp () {