On Sat, Aug 9, 2008 at 2:08 PM, Johannes Schindelin <Johannes.Schindelin@xxxxxx> wrote: > Hi, > > On Sat, 9 Aug 2008, Junio C Hamano wrote: > >> Junio C Hamano <gitster@xxxxxxxxx> writes: >> >> > Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: >> > >> >> What does the user most likely want with this command? >> >> >> >> $ git checkout --track origin/next >> >> >> >> Exactly. A branch called 'next', that tracks origin's branch 'next'. >> > >> > I like this. >> > >> > An explicit --track request from the command line (as opposed to >> > happening to have "branch.autosetupmerge" configuration) is a very >> > good cue that what the user wants to do is not to take a peek on a >> > detached HEAD but a more permanent playpen created. >> >> A couple more thoughts. > > At first, I liked the thoughts, but... > >> (1) You may not necessarily are used to --track, but may still want this >> done. It might not be a bad idea to associate this "local dwimming" >> to creation of a new branch. In other words, all of these: >> >> $ git checkout -b origin/next > > This cannot be dwimmed, as it literally means "start a new branch called > 'origin/next' from HEAD". Could we check whether there is already a remote called "origin" with a branch called "next"? If refs/remotes/origin/next exists it could be confusing to create refs/heads/origin/next anyway, so it this dwim might eliminate a problem as well as be nicer. In fact, git soon complains (rightly) about ambigiuos references in this case. > So it would change the current behavior would, breaking people's habits (I > do "git checkout -b bla" a lot when I realize that I want to have the > current changes on a new branch). If we did this dwim only for remotes, your desired behavior could still work, right?. The default is to --track for branches created from remotes anyway, right? Thanks, Tarmigan -- 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