我正在研究从Starteam迁移到Git。
目前,在Starteam中,我们使用带有特殊名称的“浮动视图(floating views)”。这些浮动视图基本上像别名一样工作。因此,我们可以指定要从其中签出的特定别名,并获得我们当前模型测试的分支。
在Git中,如何实现这一点?基本上,这就是我们的分支如何组织的:
这些都是分支
master (stable view)
| - Branch 2012.05.01
| | - Project 1
| | - Project 2
| | - model [floating view / alias to Branch 2012.05.01]
|
| - Branch 2012.07.11 (these would also have various child views for projects)
| - Branch 2012.10.17
当模型测试完成后,Branch 2012.05.01
将被合并到 master
分支中。
在我们的自动化脚本(ant)中,为了运行我们的模型部署,我们只需从名为 model
的分支中检出即可。这样,我们更改正在测试的模型所使用的分支时,就不必更改脚本,并且找出我们正在测试的视图就像弄清楚 model
分支引用哪个分支一样简单。
是否有类似于 Git 的方法可以实现这样的功能?
明确一下:
- 我想要一个分支的别名。一个分支,而不是提交。
Branch 2012.05.01
意味着打算在 2012.05.01 发布的分支,它并不表示时间中的 2012.05.01 时刻。- 我想给
Branch 2012.05.01
设置一个别名。Branch 2012.05.01
是一个集成分支,它经常被修改。但我不想将其引用作为Branch 2012.05.01
,我希望将其引用作为model
。这样,我可以更改我的别名以引用Branch 2012.07.11
,而无需更改任何检出代码脚本即可获取该分支的最新代码。
git symbolic-ref refs/heads/master refs/heads/main
-- 如果你的代码库使用的是main
分支而你习惯于老派的master
分支 :) - kolypto