我们目前正在使用TFS 2013,GIT设置了主要群组的不同项目。问题是我有几个库需要与其他项目共享项目的不同分支。例如,Project1和Project2使用通用版本,Project3使用同一库的修改版本。快速概述:
PROJECT1 - 共享代码\ branch1
Project2的 - 共享代码\ branch1
项目3 - 共享代码\ branch2
共享代码项目 - 共享代码\ branch1 - 共享代码\ branch2
我当然希望能够根据需要在branch1和branch2之间来回合并更改。
到目前为止,我最好的想法是为每个分支创建一个带有本地git目录的共享代码项目,然后尝试在TFS中进行合并。然后,每个项目都将访问它所需的分支目录。这看起来相当混乱(特别是在多台开发者机器上)。
有任何建议或意见吗?感谢。
答案 0 :(得分:0)
据我所知,Git for TFS具有git的所有核心功能。
因此,如果您假设一个结构如下,则您拥有项目P1
和P2
,并且您拥有一个库L
以及该库L'
的后代。如果P1
使用L
而P2
使用L'
。
Git
处理此问题的方法是将L'
作为clone
L
进行管理。由于您使用的是DVCS,因此可以使用L
作为L'
的上游存储库。这样,您就可以将L
的全部或部分更改纳入L'
,而L'
P2
干扰P1
所需的forking
差异
这基本上是github .git
模型found here。虽然这些指令是用github编写的,但它们对任何kernel.org
存储库都有效。
此外,这与linux内核开发的工作方式类似。 vanilla内核由{{1}}维护,各种发行版(RedHat,Arch等)的修改内核保持为forks。叉子定期与主线同步,并且更改被合并以支持发行版的内核版本。