From: Ian Jackson Date: Sun, 12 Aug 2018 00:36:59 +0000 (+0100) Subject: git-debrebase: merge: Actually record merge resolutions X-Git-Tag: archive/debian/6.7~63 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=commitdiff_plain;h=6a7d91dc81cbc8922bebc4930991902a9a00da79 git-debrebase: merge: Actually record merge resolutions And, destroy it on scrap. Nothing consumes this yet. Signed-off-by: Ian Jackson --- diff --git a/git-debrebase b/git-debrebase index 09e0907d..96966adb 100755 --- a/git-debrebase +++ b/git-debrebase @@ -56,6 +56,7 @@ our ($opt_defaultcmd_interactive); our $us = qw(git-debrebase); our $wrecknoteprefix = 'refs/debrebase/wreckage'; +our $merge_cache_ref = 'refs/debrebase/merge-resolutions'; $|=1; @@ -2216,6 +2217,10 @@ sub cmd_scrap () { "update $gdrlast $ffq_prev_commitish $git_null_obj", "update $ffq_prev $git_null_obj $ffq_prev_commitish"; } + if (git_get_ref $merge_cache_ref) { + push @deferred_updates, + "delete $merge_cache_ref"; + } if (!@deferred_updates) { fail "No ongoing git-debrebase session." unless $opt_noop_ok; finish 0; @@ -2622,6 +2627,7 @@ END sub cmd_record_resolved_merge () { badusage "record-resolved-merge takes no further arguments" if @ARGV; + # xxx needs documentation my $new = get_head(); my $method; @@ -2631,8 +2637,8 @@ sub cmd_record_resolved_merge () { my $maybe = sub { print "Seems to be $method.\n"; }; my $yes = sub { my ($key, $ref) = @_; + reflog_cache_insert $merge_cache_ref, $key, $ref; print "OK. You can switch branches and try git-debrebase again.\n"; - confess "todo $ref"; # xxx 1; }; diff --git a/tests/tests/gdr-merge-conflicts b/tests/tests/gdr-merge-conflicts index f0abea79..12e7055a 100755 --- a/tests/tests/gdr-merge-conflicts +++ b/tests/tests/gdr-merge-conflicts @@ -112,7 +112,6 @@ git commit -m FIX git reset --hard git clean -xdff -t-expect-fail F:todo \ t-git-debrebase record-resolved-merge git checkout master