我有一个使用 git 作为 VCS 的大型项目。在任何给定时间,我都在努力实现一些功能/错误修复等。对于任何给定的功能/错误,创建分支层次结构会很好——例如
$ git branch
feature1
sub-branch1
sub-branch2
sub-branch3
feature2
sub-brancha
*sub-branchb #<--currently checked out
sub-branchc
bugfix1
sub-branch-foo
$ git checkout sub-brancha
$ git branch
feature1
sub-branch1
sub-branch2
sub-branch3
feature2
*sub-brancha #<--currently checked out
sub-branchb
sub-branchc
bugfix1
sub-branch-foo
是否可以做这样的事情,还是我需要采用更原始的命名方案?
编辑
为了使我正在寻找的内容更加具体,如果 feature1 是一个 git 分支,那么在上面的示例中,sub-branch1 将全部由git checkout -b sub-branch1
分支feature1
(从 master 分支)创建。例如:
$ git checkout master
$ git checkout -b feature1
$ git checkout -b testing
$ git branch
master
feature1
*testing
$ git checkout master
$ git checkout -b feature2
$ git branch
master
feature1
testing
*feature2
让 git branch 简单地按分支的来源组织分支(带有一点额外的缩进)可能对我的目的来说已经足够了......虽然如果我能获得超级奖励积分:
$ git branch
feature1
testing
feature2
testing
bugfix1
sub-branch-foo
通过某种方式来管理“feature1/testing”和“feature2/testing”之间的名称冲突