当我执行 git branch -a 时,分支的分支会是什么样子?
How will a branch off a branch look like when I do git branch -a?
如果我在我的终端机上做 "git branch -a",分支的分支(所以我从另一个分支创建的分支)看起来与原始分支不同吗?
例如,如果我在 branchA 之外有一个 branchB,分支应该是这样的:origin/branchA/branchB?
没有
无论如何,除非你这样命名。显示的只是分支的名称,可以是任何你想要的。
branchB
而不是 显示为 branchA/branchB
的原因是:
这意味着 branchA
和 branchB
之间存在某种强耦合,考虑到以下情况毫无意义:
branchA
可以随时删除(不会删除它引用的提交):branchB
仍然存在,未更改
branchB
可以随时 rebased 在任何其他分支之上
branchB
不知道它在 "based" 上的任何其他分支:它只引用一个提交(以及所有可从其 HEAD 访问的提交)
分支名称中允许使用斜杠:您可以将其命名为xxx/yyy
(如一个分支):这是为了定义一个hierarchy in a branch naming convention.
典型例子:
- Gerrit 个审查分支:
refs/for/REL1_20/bug/36151
:for/REL1_20/bug/36151
是一个 (Gerrit) 分支。
- GitHub Pull Request branches:
git fetch origin pull/ID/head:BRANCHNAME
: pull/ID
是一个 (PR) 分支
如果我在我的终端机上做 "git branch -a",分支的分支(所以我从另一个分支创建的分支)看起来与原始分支不同吗? 例如,如果我在 branchA 之外有一个 branchB,分支应该是这样的:origin/branchA/branchB?
没有
无论如何,除非你这样命名。显示的只是分支的名称,可以是任何你想要的。
branchB
而不是 显示为 branchA/branchB
的原因是:
这意味着
branchA
和branchB
之间存在某种强耦合,考虑到以下情况毫无意义:branchA
可以随时删除(不会删除它引用的提交):branchB
仍然存在,未更改branchB
可以随时 rebased 在任何其他分支之上branchB
不知道它在 "based" 上的任何其他分支:它只引用一个提交(以及所有可从其 HEAD 访问的提交)
分支名称中允许使用斜杠:您可以将其命名为
xxx/yyy
(如一个分支):这是为了定义一个hierarchy in a branch naming convention.
典型例子:- Gerrit 个审查分支:
refs/for/REL1_20/bug/36151
:for/REL1_20/bug/36151
是一个 (Gerrit) 分支。 - GitHub Pull Request branches:
git fetch origin pull/ID/head:BRANCHNAME
:pull/ID
是一个 (PR) 分支
- Gerrit 个审查分支: