diff options
Diffstat (limited to 'git-debrebase')
-rwxr-xr-x | git-debrebase | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/git-debrebase b/git-debrebase index 19beef8..5fcec54 100755 --- a/git-debrebase +++ b/git-debrebase @@ -29,6 +29,7 @@ # git-debrebase [<options> --] [<git-rebase options...>] # git-debrebase [<options>] analyse # git-debrebase [<options>] launder # prints breakwater tip etc. +# git-debrebase [<options>] stitch [--prose=<for commit message>] # git-debrebase [<options>] downstream-rebase-launder-v0 # experimental # # git-debrebase [<options>] gbp2debrebase-v0 \ @@ -1136,6 +1137,30 @@ sub cmd_record_ffq_prev () { } } +sub cmd_stitch () { + my $prose = ''; + GetOptions('prose=s', \$prose) or die badusage("bad options to stitch"); + badusage "no arguments allowed" if @ARGV; + my ($status, $message, $current, $ffq_prev) = ffq_prev_branchinfo(); + if ($status ne 'branch') { + fproblem $status, "could not check ffq-prev: $message"; + fproblems_maybe_bail(); + } + my $prev = $ffq_prev && git_get_ref $ffq_prev; + if (!$prev) { + fail "No ffq-prev to stitch." unless $opt_noop_ok; + } + $prose = ", $prose" if length $prose; + runcmd @git, qw(merge -s ours --no-edit -m), <<END; +Declare fast forward / record previous work + +[git-debrebase pseudomerge: stitch$prose] +END + # xxx should delete old ffq-prev + # xxx should avoid making pseudomerge if not needed + # xxx should make pseudomerge in temp tree so can do atomic update +} + sub cmd_gbp2debrebase () { badusage "needs 1 optional argument, the upstream" unless @ARGV<=1; my ($upstream_spec) = @ARGV; |