git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* git-branch silently ignores --track on local branches
@ 2007-11-10 17:45 Wayne Davison
  2007-11-10 18:43 ` Junio C Hamano
  0 siblings, 1 reply; 3+ messages in thread
From: Wayne Davison @ 2007-11-10 17:45 UTC (permalink / raw)
  To: git

I used to be able to create a branch that tracked master (or another
local branch) by using "git branch --track new-branch" from that
checked-out branch.  However, this functionality was apparently
removed and now the --track option is silently ignored for local
branches.  I'd love to have this functionality restored.  Is there
a problem with local branches being supported when explicitly
requested?

..wayne..

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: git-branch silently ignores --track on local branches
  2007-11-10 17:45 git-branch silently ignores --track on local branches Wayne Davison
@ 2007-11-10 18:43 ` Junio C Hamano
  2007-11-11 19:23   ` Johannes Schindelin
  0 siblings, 1 reply; 3+ messages in thread
From: Junio C Hamano @ 2007-11-10 18:43 UTC (permalink / raw)
  To: Wayne Davison; +Cc: git, Johannes Schindelin

Wayne Davison <wayne@opencoder.net> writes:

> ...  Is there
> a problem with local branches being supported when explicitly
> requested?

Maybe this one?

commit 6f084a56fcb3543d88d252bb49c1d2bbf2bd0cf3
Author: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Date:   Tue Jul 10 18:50:44 2007 +0100

    branch --track: code cleanup and saner handling of local branches
    
    This patch cleans up some complicated code, and replaces it with a
    cleaner version, using code from remote.[ch], which got extended a
    little in the process.  This also enables us to fix two cases:
    
    The earlier "fix" to setup tracking only when the original ref started
    with "refs/remotes" is wrong.  You are absolutely allowed to use a
    separate layout for your tracking branches.  The correct fix, of course,
    is to set up tracking information only when there is a matching
    remote.<nick>.fetch line containing a colon.
    
    Another corner case was not handled properly.  If two remotes write to
    the original ref, just warn the user and do not set up tracking.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

As a local branch does not have to be "fetched", the restriction
on "remote.<nick>.fetch" is sort of pointless.

Also why remote.<nick>.fetch needs a colon, I begin to wonder.
You can be keep fetching and merging from the same branch of the
same remote without keeping a remote tracking branch for that,
but the above "correct fix" forbids that.

Dscho, what were we smoking when we made this change?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: git-branch silently ignores --track on local branches
  2007-11-10 18:43 ` Junio C Hamano
@ 2007-11-11 19:23   ` Johannes Schindelin
  0 siblings, 0 replies; 3+ messages in thread
From: Johannes Schindelin @ 2007-11-11 19:23 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Wayne Davison, git

Hi,

On Sat, 10 Nov 2007, Junio C Hamano wrote:

> Wayne Davison <wayne@opencoder.net> writes:
> 
> > ...  Is there
> > a problem with local branches being supported when explicitly
> > requested?
> 
> Maybe this one?
> 
> commit 6f084a56fcb3543d88d252bb49c1d2bbf2bd0cf3
> Author: Johannes Schindelin <Johannes.Schindelin@gmx.de>
> Date:   Tue Jul 10 18:50:44 2007 +0100
> 
>     branch --track: code cleanup and saner handling of local branches
>     
>     This patch cleans up some complicated code, and replaces it with a
>     cleaner version, using code from remote.[ch], which got extended a
>     little in the process.  This also enables us to fix two cases:
>     
>     The earlier "fix" to setup tracking only when the original ref started
>     with "refs/remotes" is wrong.  You are absolutely allowed to use a
>     separate layout for your tracking branches.  The correct fix, of course,
>     is to set up tracking information only when there is a matching
>     remote.<nick>.fetch line containing a colon.
>     
>     Another corner case was not handled properly.  If two remotes write to
>     the original ref, just warn the user and do not set up tracking.
>     
>     Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
>     Signed-off-by: Junio C Hamano <gitster@pobox.com>
> 
> As a local branch does not have to be "fetched", the restriction
> on "remote.<nick>.fetch" is sort of pointless.

IIRC it was you, Junio, who complained first that the local branches have 
tracking set up.

> Also why remote.<nick>.fetch needs a colon, I begin to wonder. You can 
> be keep fetching and merging from the same branch of the same remote 
> without keeping a remote tracking branch for that, but the above 
> "correct fix" forbids that.

The point here was to find out what to track when we do a "git branch 
--track <name> <origname>".  So we definitely only want to find those 
remotes that fetch to a certain tracking branch.

Sure, you can set up branch.<x>.merge to a branch that is not tracked.  
But git cannot find out which one it is in the command "branch".

> Dscho, what were we smoking when we made this change?

Dude, I, uh, I think I, uh, don't remember.  Peace.

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-11-11 19:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-10 17:45 git-branch silently ignores --track on local branches Wayne Davison
2007-11-10 18:43 ` Junio C Hamano
2007-11-11 19:23   ` Johannes Schindelin

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).