X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=git-debrebase;h=e2a1a325ed3bb02fa978483f4965bd0610a8710a;hb=f2c6ef698b8cacd4e55b09000454960f50bbc6ea;hp=87d605b6e50e7d0a75ef9a0dc5fa74afd077aba0;hpb=1c679c975b3d6a040420e000705a62da4027ffd2;p=dgit.git diff --git a/git-debrebase b/git-debrebase index 87d605b6..e2a1a325 100755 --- a/git-debrebase +++ b/git-debrebase @@ -87,11 +87,19 @@ # refs/ffqrebase-prev/BRANCH BRANCH may be refs/...; if not it means # refs/ffqrebase-base/BRANCH refs/heads/BRANCH # zero, one, or both of these may exist -s +# # git-debrebase without start, if already started, is willing # to strip pseudomerges provided that they overwrite exactly # the previous HEAD # xxxx is this right ? what matters is have we pushed +# I think in fact the right answer is: +# git-debrebase always strips out pseudomerges from its branch +# a pseudomerge is put in at the time we want to push +# at that time, we make a pseudomerge of the remote tracking +# branch (if raw git) or the dgit view (if dgit) +# for raw git git-ffqrebase, do want preciseley to record +# value of remote tracking branch or our branch, on start, so we +# overwrite only things we intend to # the previous pseudomerge check for tags and remote branches ? use strict; @@ -292,8 +300,8 @@ sub classify ($) { return $unknown->("complex merge"); } -sub walk ($$$;$$$) { - my ($input, $pseudos_must_overwrite_this, $wantdebonly, +sub walk ($$;$$$) { + my ($input, $wantdebonly, $report, $depth, $report_anomaly, $report_only) = @_; # go through commits backwards # we generate two lists of commits to apply @@ -354,16 +362,6 @@ sub walk ($$$;$$$) { $rewrite_from_here->(); next; } elsif ($ty eq 'Pseudomerge') { - if (defined $pseudos_must_overwrite_this && - !grep { - is_fast_fwd $pseudos_must_overwrite_this, $_->{CommitId} - }, - @{ $cl->{Overwritten} }) { - $report_anomaly->($cl, - "Pseudomerge should overwrite". - " $pseudos_must_overwrite_this". - " but does not do so"); - } push @pseudomerges, $cl; $rewrite_from_here->(); $cur = $ty->{Contributor};