tfs – 如何避免源代码依赖层次结构导致的嵌套分支
我们正在使用TFS 2010,我们的依赖/分支管理存在一些非常烦人的问题.
乍一看,我们的问题非常普遍.我们有AppServer,WebClient和WinClient. WebClient和WinClient都依赖于AppServer.还有两个限制: >我们更喜欢包含特定版本的已使用依赖项 我们选择以下文件夹结构: |-AppServer (1) |-WebClient |-Dependencies |-AppServer (2) |-Sources |-WinClient |-Dependencies |-AppServer (3) |-Sources AppServers(2)和(3)是AppServer(1)的分支(作为第一类分支).这一切都很好,符合我们的开发方案. 现在,出现了麻烦.假设我们想在WebClient上实现“每个发布分支”模式,这意味着将整个WebClient层次结构分支到另一个地方.我们不能这样做,因为TFS2010不允许嵌套的第一类分支. 为了增加挑战,我们设想分支层次结构(仅适用于WebClient,我们还有其他几个依赖项和依赖项目)是这样的: WebClient |-Client1 | |-feature-1 | |-feature-2 | |-v1 Release | | |-v1 hotfix1 | | |-v1 hotfix2 | |-v2 Release | |-v1 hotfix1 | |-v1 hotfix2 | |-Client2 |-feature-1 |-feature-2 |-v1 Release | |-v1 hotfix1 | |-v1 hotfix2 |-v2 Release |-v1 hotfix1 |-v1 hotfix2 我们有什么选择?我可以想到几个: >将一流分支转换为文件夹.这将允许我们嵌套分支,但我们将失去跟踪和可视化,我不喜欢. 有没有我想念的解决方案? 解决方法
几个想法:
1)您可以将您的AppServer分支与WebClient分开并取消嵌套,只需使用TFS中的工作区映射功能来模拟您通过将AppServer分支到客户端分支中所定义的内容.这将允许开发人员选择他们想要的AppServer分支,并将其嵌套到正确位置的本地文件结构中,以方便他们的工作. 2)你的陈述通过使用二进制文件看起来像我将进一步探索并试图测量和量化的东西来减缓开发.如果您的AppServer和客户端之间有明显的中断,那么我希望它们之间没有依赖关系,而是可以通过svcutil或其他工具生成的一些代理代码.如果是这种情况,并且您在某个过程中托管AppServer并从另一个过程中的客户端进行通信,我不明白为什么您需要实现原始结构.它似乎是不必要的耦合,我想知道它为什么要更详细地完成. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |