git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ryan Lortie <desrt@desrt.ca>
To: Konstantin Khomoutov <flatworm@users.sourceforge.net>
Cc: git@vger.kernel.org
Subject: Re: 'git branch' when origin branch with same name exists
Date: Tue, 19 Jun 2012 13:06:41 -0400	[thread overview]
Message-ID: <4FE0B1A1.9030509@desrt.ca> (raw)
In-Reply-To: <20120619200648.2cc8a861.kostix@domain007.com>

hi,

On 12-06-19 12:06 PM, Konstantin Khomoutov wrote:
> How bad this state really is?
> The user is free to do
> $ git branch -m gtk-3-4 mygtk-3-4
> at any time after the error was detected.

The user that makes the mistake to type 'git branch' instead of 'git 
checkout' in the first place is unlikely to know about this.

> This would not protect from the obvious case when a branch has been
> created on the remote (by someone else) but has not been fetched yet
> and so the local repo does not know a branch with "conflicting"
> name do exist.

I consider this to be a far less likely case: more of a race condition, 
really, and nothing we can do about it.  This is no reason that we 
should not try to fix the easier case (which is also the far more likely 
case).

> Your intention is good but I think a safety net of the kind you
> propose would be slightly over the top.
> Basically you're trying to compensate for the user error who
> thinks the "branch" command should take her to an already existing
> branch while it does something completely different.
> Hence preventing the `git branch gtk-3-4` command from completion
> should there be a remote-tracking branch of the same name is just wrong
> IMO.  On the other hand, posting a hint might be OK.  I'm talking about
> something like this:

I'll say again: it would still be possible with an appropriate 'force' 
parameter.

> Anyway, this will make each call to git-branch to perform a crawl over
> the refs/heads hierarchy which, I think, is not worth the result.

I know branching is lightweight with git, but I don't understand that 
the operation is so performance-critical that a enumerating a directory 
and doing a few stats would be a huge issue...

If it is decided to only check the 'origin' remote then we're talking 
about one single stat() syscall.

Cheers

  reply	other threads:[~2012-06-19 17:06 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-19 14:51 'git branch' when origin branch with same name exists Ryan Lortie
2012-06-19 15:18 ` jaseem abid
2012-06-19 15:35 ` Michael Schubert
2012-06-19 15:54   ` Ryan Lortie
2012-06-19 16:17     ` Philippe Vaucher
2012-06-19 15:57   ` Angus Hammond
2012-06-19 16:06 ` Konstantin Khomoutov
2012-06-19 17:06   ` Ryan Lortie [this message]
2012-06-20  8:31     ` Andreas Ericsson
2012-06-19 17:21 ` Thomas Rast
2012-06-19 18:31   ` Junio C Hamano
2012-06-19 20:44     ` Ryan Lortie
2012-06-19 21:32       ` Junio C Hamano
2012-06-19 21:50         ` Ryan Lortie
2012-06-19 23:21       ` Phil Hord
2012-06-20 17:32         ` Junio C Hamano
2012-06-20 17:51           ` Matthieu Moy
2012-06-20 18:07             ` Junio C Hamano
2012-06-19 18:22 ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FE0B1A1.9030509@desrt.ca \
    --to=desrt@desrt.ca \
    --cc=flatworm@users.sourceforge.net \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).