From: Marc Branchaud <marcnarc@xiplink.com>
To: Git Mailing List <git@vger.kernel.org>
Subject: "remote-tracking branch"?
Date: Mon, 11 Jun 2012 10:54:05 -0400 [thread overview]
Message-ID: <4FD6068D.1010509@xiplink.com> (raw)
On 12-06-11 06:04 AM, Lucien Kong wrote:
> "git rebase -i" can be very dangerous if used on an already published
> history. This code detects that one is rewriting a commit that is an
> ancestor of a remote-tracking branch, and warns the user through the
> editor. This feature is controlled by a new config key
> rebase.checkremoterefs.
When I first read this I was confused by the term "remote-tracking branch".
I see that the docs for "git remote" and "git branch" use this term for
branches like 'origin/master', as does the glossary.
But to me 'origin/master' is simply a "remote branch". In my mind, a
"remote-tracking branch" is a local branch with its "remote" and "merge"
config values set. So if my local config has
branch.public.remote = origin
branch.public.merge = refs/heads/master
then my local 'public' branch is a "remote-tracking branch" that tracks the
'master' branch in the 'origin' repository.
I feel my interpretation is reinforced by the --track/--no-track options in
"git branch".
I believe the docs would be clearer if they used the terms "remote branch"
and "remote-tracking branch" in this way.[1] But before submitting a patch,
I'd like to hear what others think. Am I maybe missing some other
interpretation of "remote branch"? Or is there already a term for "a local
branch that tracks a remote branch"?
M.
[1] I understand that strictly speaking, all branches are local, and a
"remote branch" like 'origin/master' is in fact a local branch named 'master'
in the 'origin' namespace, and that it's really the fetch refspecs in a
remote's configuration that link updates in a remote repository to some local
branches, and there's no requirement that a remote named 'origin' be linked
with the local 'origin' ref namespace, and so on and so on. I think these
details are important, and should be documented somewhere. But I also think
"remote branch" is a good shorthand term to refer to all that.
next reply other threads:[~2012-06-11 14:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-11 14:54 Marc Branchaud [this message]
2012-06-11 16:31 ` "remote-tracking branch"? Junio C Hamano
2012-06-11 16:46 ` 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=4FD6068D.1010509@xiplink.com \
--to=marcnarc@xiplink.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.