Team Foundation Server 2010 - 分支还是不分支?
我目前有许多团队项目都由 TFS 愉快地管理。
我有一个项目,一个 Windows 应用程序,当前正在使用,在将代码库移植到 TFS 之前,我们手动使用脚本来复制/合并文件来维护生产构建和新的开发构建。
例如 App1 v1.x - 生产和 App1 v2.0 正在开发中。
在 TFS 之前,我们手动将开发版本中的错误修复“合并”到生产版本中 - 因此 v1.x 中适用的错误修复也在 v2 中修复。
在这种特殊情况下,v2 是完全不同的,重构了 ui 等。我的问题是将这种情况移植到 TFS 的最佳方法是什么。
在我看来,我有两个选择:
创建一个新的团队项目并继续手动“合并”适用的 代码文件。
从当前项目 v1 创建一个品牌,并在 VS 中逐段替换/覆盖该项目,以便源代码管理可以将更改管理回主团队项目。 V2 也有一些额外的类库 - 如果这有区别的话。
I've currently got a number of Team Projects all happily managed by TFS.
I have one project, a windows app, that is currently in use and before I ported the code base to TFS, we manually used to maintain both the production build and a new development build using scripts to copy/merge the files.
e.g. App1 v1.x - production and
App1 v2.0 in development.
Before TFS we manually "merged" to bug fixes from the development build into the production build - so where applicable bug fixes from v1.x were also fixed in v2.
In this particular case v2 is quite different, re-factored ui, etc. The question I have is what is the best way of porting this scenario to TFS.
As I see it I have two options:
Create a new Team Project and continue manually "merging" applicable
code files.Create a brand from the current project v1 and replace / overwrite the project piece by piece in VS so that the source control can manage the changes back to the Main team project.
V2 has a few additional class libs too - if that makes a difference.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
通常,这是我们用来进行分支和合并的策略:
使用这种每个版本一个分支的策略,每个发布和维护的版本总是有一个分支,其中可以轻松地在版本和主流当前开发线之间向前和向后传播修复。
考虑到这一点,我们使用 TFS 团队项目来发布某个产品的多个版本。这限制了创建和维护项目空间的开销。
Typically, this is the strategy we use to do branching and merging:
Using this branch-per-release strategy, you always have a branch per shipped and to be maintained version in which fixes can easily be propagated forward and backward between versions and the mainstream CURRENT development line.
With this respect, we use a TFS team project for multiple releases of a certain product. This limits the overhead creating and maintaining the project spaces.
简而言之...去分支!
看来您的版本之间的代码非常相似,您只需简单地分支新版本就可以了。
一般来说,如果您具有以下一个或多个条件,则更改为新的团队项目是有意义的:
阅读您的帖子 我不认识到创建新团队项目后需要继续 - 当然我可能是错的。
如果您决定使用分支变体,您可以从令人印象深刻的 Visual Studio TFS 分支指南 2010 中受益匪浅,关于如何塑造代码库的结构。
In short...To branch!
It seems your code between versions is that much similar that you should be fine by simply branching your new release.
In general, changing to a new Team Project makes sense if you have one or more of the following:
Reading your post I don't recognize the need to go after creating a new Team Project - of course I might be wrong.
In case you decide to go with the branch variant you could be greatly benefited from the impressive Visual Studio TFS Branching Guide 2010, on how to shape the structure of your codebase.