Re: [PATCH] Add function to checkout a branch in git.el
From: Sergei Organov <hidden>
Date: 2016-06-15 22:44:13
Karl Hasselström [off-list ref] writes:
On 2008-02-13 21:23:52 +0300, Sergei Organov wrote:quoted
Karl Hasselström [off-list ref] writes:quoted
* if the user enters a name that's not the name of an existing branch, display a prompt like this Creating new branch "foo". Where should it start? Tab complete on existing tags and branches, but accept any committish. Create the new branch and switch to it.It still doesn't allow to detach HEAD at arbitrary tag/committish, as far as I can see.It wouldn't be hard. Just try to interpret the string supplied by the user as a committish: if successful, check it out; if not, create a new branch by that name.
Too much AI for a function, at least to my taste.
Of course, this makes it impossible to create a branch with the same name as an existing committish, but that's probably OK.
I'd say it's probably even desirable. Whatever implementation, I'd at least check for such a collision and ask for confirmation, provided it's not very time-consuming.
quoted
I believe the interface should be designed more carefully. Here are some thoughts/suggestions:Yes, having different commands that do one job each and do it well isn't a bad idea either. I like my idea more, but obviously whoever writes the code gets to decide ...
Yes, sure. I just wanted to point to alternative approach. Or maybe I'll get the time to implement it myself, though I'm more interested in git-merge and git-[fetch|pull]-[merge|rebase] implementation, so that git.el support at least some of real workflows without resorting to plain GIT commands. -- Sergei.