Re: [PATCH 0/3] Reject non-ff pulls by default
- From
Jeff King <peff@peff.net>
- Date
- Sep 9, 2013, 20:53 UTC
- Message-ID
- <20130909205349.GA15506@sigill.intra.peff.net>
- In-Reply-To
- <vpq38pdlnxk.fsf@anie.imag.fr>
On Mon, Sep 09, 2013 at 10:50:31PM +0200, Matthieu Moy wrote:
Show 17 quoted lines
> John Keeping <john@keeping.me.uk> writes: > > > I think we need to make sure that we give instructions for how to go > > back if the default hasn't done what you wanted. Something like this: > > > > Your pull did not fast-forward, so Git has merged '$upstream' into > > your branch, which may not be correct for your project. If you > > would rather rebase your changes, run > > > > git rebase > > > > See "pull.mode" in git-config(1) to suppress this message in the > > future. > > Sounds good to me. One option is to display the warning on the > command-line, and another option is to show it in COMMIT_EDITMSG (since > we now default to showing it even for non-conflicted merges).
I hadn't though of that, but showing it in COMMIT_EDITMSG is a great moment, because you are notifying the user _before_ they create a merge commit. So the backout/switch procedure is "cancel this by giving an empty message, then re-run git pull --rebase".
On the other hand, if we run into conflicts, you'd probably want to let them know before asking them to resolve them all. So perhaps a separate message would be needed for that case (to suggest "reset --merge && git pull --rebase").
-Peff