Le 03/03/2016 23:55, Junio C Hamano a écrit :
Grégoire PARIS <postmas...@greg0ire.fr> writes:

Not sure how cherry-picking is managed, and whether commit is able to
see that we are doing a cherry-pick, and end it up properly. Anyway,
with Kevin's patch, we should be able to happily use cherry-pick
[Please do not top post]

It is somewhat sad to see such a response as that is backwards.

"cherry-pick --continue" originally was "I am done with the commit I
was asked to deal with, so please replay the next one", and in order
to "be done with" the commit, you would used "git commit" yourself,
with whatever necessary options (e.g. --no-verify, -s, -c) you want
to affect the behaviour of the "git commit".

It is a later invention that "cherry-pick --continue" additionally
creates a commit when the user, even though she claims to "be done
with", hasn't actually made the commit before going on to replay the
next one.  It was accepted as a short-cut as most of the time you do
not give any option to your "git commit" invocation, but probably
was a misguided invention--it made new people somehow think that
they are not allowed to run "git commit" to conclude the conflict
resolution, when in reality that is an acceptable and primary way
to do so and "--continue" is a mere short-hand.

As "git commit" does have options other than "--no-verify" that
affects the way it behaves, and can gain more such options in the
future, having to keep adding corresponding options to "cherry-pick
--continue --more-options" will not be a good solution in the longer
run.


Sorry for top-posting, I'll keep in mind to not do this.

You're describing very precisely how using cherry-pick --continue makes me feel. I checked again right now and even though there is a comment to make me understand that commit would do a great job at solving my problem (hint: and commit the result with 'git commit'), I failed to notice it.

I agree with you, adding every commit option is not a good solution… Maybe a good solution would be to display a special message when using cherry-pick --continue with unrecognized options? Like for instance

> hint: try git commit --no-verify, then git cherry-pick --continue to replay the next commit

What do you think?

--
greg0ire
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to