On Fri, Mar 14, 2014 at 4:55 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote: >> For the users that really did mean "--merge", the warning is silly. >> It's basically saying "We know that you're about to mess up your work >> tree, but we let you mess up anyway. Learn the correct way so that you >> don't mess up next time". > > I suspect that you meant "--mixed" instead of "--merge" here. No, I did mean "--merge". It's silly for inexperienced users because it's too late to use "--merge" by the time they realized they should not have used the default. The work tree has already become a mess. So they'd immediately think "if git was smart enough to warn me about the mess, why not prevent me from getting into the mess in the first place?" For the experienced users, they would understand the warning, because they would be aware of the index, and the effect that "--mixed" and "--merge" have on it. > So I am OK with "eventually error out by default", but not OK with > "we know better than the user and will not allow it at all". Again, I didn't mean "we know better than the user". However, from a new user's perspective, they won't understand why "git reset" gives the warning, but still "knowingly" messes up their work tree. And "we don't know better than the user" is exactly why I think we should "eventually error out" rather than automatically switching to "--merge". As Matthieu was saying, automatically switching to "--merge" could discard conflict resolutions, which would be undesirable. So it's better for git to error out then having git decides what the user (probably) wants. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html