On 25 September 2013 22:01, Matthieu Moy <Matthieu.Moy@xxxxxxxxxxxxxxx> wrote: > Jona Christopher Sahnwaldt <jc@xxxxxxxxxxxx> writes: > >> Yes, I think the rules for the "short form" (the guessing when there's >> no --) should be made simpler, or maybe the guessing should be dropped >> altogether. I don't know. I don't know git well enough to be able to >> be more specific. I just find the current behavior very confusing. > > It can hardly be "simpler" (in the sense "behavior that can be described > with fewer words"), but it could be tightened to be safer. > > When a remote branch $foo exists, a local branch $foo does not, and a > file $foo does, then > > git checkout $foo > > rather likely means "I want to use git checkout's DWIM and create local > branch $foo", but it currently means to Git "checkout file foo from the > index". It would make sense to die here, and require the use of --. That sounds good. A rule like "when A is true, B is false, and C is true, then X" is probably too complex to be useful. It's probably better to give up and say "sorry, I DKWYM (don't know what you mean)". :-) There are a few more ideas, opinions, discussions about all this at http://stackoverflow.com/questions/18833617/why-does-git-checkout-remote-branchname-not-create-new-tracking-branch especially in the comments. Cheers, JC > > No time to write a patch for this. Any volunteer? > > -- > Matthieu Moy > http://www-verimag.imag.fr/~moy/ -- 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