author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | |
Tue, 10 Jul 2007 17:50:44 +0000 (18:50 +0100) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Wed, 11 Jul 2007 23:03:58 +0000 (16:03 -0700) | ||
commit | 6f084a56fcb3543d88d252bb49c1d2bbf2bd0cf3 | |
tree | 00a572bf2d745f3d55a0b00d29682fb779cd5b04 | tree | snapshot |
parent | b42f69273bf5ae2d5bb0c7479bfa9827e7b351ac | commit | diff |
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>
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>
Documentation/config.txt | diff | blob | history | |
Documentation/git-checkout.txt | diff | blob | history | |
builtin-branch.c | diff | blob | history | |
t/t3200-branch.sh | diff | blob | history |