* Reverting a range of commits with conflict
@ 2019-04-01 17:25 Sam Lee
2019-04-02 0:50 ` Junio C Hamano
0 siblings, 1 reply; 2+ messages in thread
From: Sam Lee @ 2019-04-01 17:25 UTC (permalink / raw)
To: git
Given:
A-B-C-D-E (HEAD)
I want to create a single commit that reverts A-B-C
So, I execute:
git revert --no-commit A~..C
which causes conflict (while reverting C, it seems).
I resolve conflicts and I continue:
git revert --continue --no-commit
And, it complains:
fatal: revert: --no-commit cannot be used with --continue
If I revert --continue without --no-commit:
git revert --continue
It brings up EDITOR twice and I end up with two commits.
I can squash them. But, I don't know if this is a desired behavior.
Should I be able to revert --continue with --no-commit?
Should revert --continue remember that initial revert invocation was
with --no-commit option?
Thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Reverting a range of commits with conflict
2019-04-01 17:25 Reverting a range of commits with conflict Sam Lee
@ 2019-04-02 0:50 ` Junio C Hamano
0 siblings, 0 replies; 2+ messages in thread
From: Junio C Hamano @ 2019-04-02 0:50 UTC (permalink / raw)
To: Sam Lee; +Cc: git
Sam Lee <skynare@gmail.com> writes:
> It brings up EDITOR twice and I end up with two commits.
> I can squash them. But, I don't know if this is a desired behavior.
It is my understanding that the users who do want a single revert of
multiple commits are expected to squash them (by choosing which ones
to squash into one), so if you really want to make them into one,
you can squash them and that is your desired behaviour. The point
is that you do not have to.
If you think a bit about it, it does not make much sense to leave
outstanding changes in limbo with --no-commit when you are picking
or reverting multiple commits. The first one may replay cleanly or
may not and needs manual resolution, but after that, the work you
did will only be in your working tree, and the difference between
that and the HEAD and the index is not recorded anywhere else. What
happens when the replaying (either cherry-picking or reverting) of
the second one had conflict? The effect of picking or reverting the
first one is now intermingled with the effect of the conflicted
picking or reverting of the second---with --no-commit, the workflow
is making the messy conflicted state needlessly larger.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-04-02 0:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-01 17:25 Reverting a range of commits with conflict Sam Lee
2019-04-02 0:50 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).