我们应该在 TFS 2015 上使用 Git 还是 TFVC
Should we use Git or TFVC on a TFS 2015
我的公司正在为 ALM、版本控制等实施 TFS 2015。我使用了 Git 和 TFVC(以及 Mercurial、SVN 和 Source Safe)。我的印象是使用 Git 会更好地为我们(开发人员)服务,但我不确定。所以我的问题是:公司在使用 TFS 2015 时是否有令人信服的理由选择 TFVC 而不是 Git? https://sway.com/ilvSzkZW5LTORgXj
我并不是要开始讨论集中式与分布式版本控制,或 TFVC 与 Git。我有兴趣了解 TFS 2015 是否同样支持两者(TFVC 和 Git)。换句话说:如果我们决定选择一个或另一个,我们是否会错过一些东西。我知道在以前版本的 TFS 中就是这种情况,但在这个新版本的 TFS (2015) 中,两个版本控制系统似乎都差不多。我公司打算在TFS 2015 实例中实施版本控制。如果 TFS 2015 对两个版本控制系统一视同仁,那么选择其中一个只是偏好问题。如果 TFS 2015 不对两个版本控制系统一视同仁,那么可能会做出与 TFS 实例更好集成的版本控制系统的决定。显然我在错误的 StackExchange 论坛上发布了我的问题。我的问题现在已在软件推荐网站上提出。
Willy-Peter Schaub(Visual Studio ALM Ranger)指导我阅读以下文档:http://vsarbranchingguide.codeplex.com/downloads/get/1439279 我从中获得了以下要点:
可扩展性、位置、经验和策略是您在规划存储库时需要考虑的一些常见因素。例如:
- 如果您的团队有集中式版本控制系统的经验,TFVC 可能会避免采用和培训成本。同样,如果您的团队有分布式版本控制系统的经验,Git 可能会更好。
- 如果您需要扩展到非常大的存储库,您可能需要考虑 TFVC。
- TFVC 目前在 TFS 2013 中更好地支持细粒度权限和策略。
- Git 可能更适合地理位置分散的团队,尤其是在网络连接不畅的情况下。
- 对于进行跨平台开发的团队,可能会有更多对基于 Git 的存储库的第 3 方支持。例如,如果您使用 XCode,则内置了对 Git 的支持。
还有以下区别:
TFVC
- 分支文件夹之间的切换既快速又简单。
- 分支是一个“副本”。
- 分支是“便宜的”,但是将多个分支映射到本地机器是“昂贵的”。
Git
- 分支之间的切换既快速又简单。
- 分支是“指针”。
- 存储是“便宜的”,因为没有版本控制数据是重复的。
迁移到 TFVC 而不是 git 的唯一令人信服的理由是迁移平台和开发人员的努力。
如果您有数百名开发人员,Git 是一个重要的培训问题。
如果您的代码在基于服务器的源代码控制系统中,那么它可能处于这样一种状态,即孩子们离开二进制文件,这使得很难迁移到 git。
培训您的开发人员,删除二进制文件,您就可以开始 git。
我的公司正在为 ALM、版本控制等实施 TFS 2015。我使用了 Git 和 TFVC(以及 Mercurial、SVN 和 Source Safe)。我的印象是使用 Git 会更好地为我们(开发人员)服务,但我不确定。所以我的问题是:公司在使用 TFS 2015 时是否有令人信服的理由选择 TFVC 而不是 Git? https://sway.com/ilvSzkZW5LTORgXj
我并不是要开始讨论集中式与分布式版本控制,或 TFVC 与 Git。我有兴趣了解 TFS 2015 是否同样支持两者(TFVC 和 Git)。换句话说:如果我们决定选择一个或另一个,我们是否会错过一些东西。我知道在以前版本的 TFS 中就是这种情况,但在这个新版本的 TFS (2015) 中,两个版本控制系统似乎都差不多。我公司打算在TFS 2015 实例中实施版本控制。如果 TFS 2015 对两个版本控制系统一视同仁,那么选择其中一个只是偏好问题。如果 TFS 2015 不对两个版本控制系统一视同仁,那么可能会做出与 TFS 实例更好集成的版本控制系统的决定。显然我在错误的 StackExchange 论坛上发布了我的问题。我的问题现在已在软件推荐网站上提出。
Willy-Peter Schaub(Visual Studio ALM Ranger)指导我阅读以下文档:http://vsarbranchingguide.codeplex.com/downloads/get/1439279 我从中获得了以下要点:
可扩展性、位置、经验和策略是您在规划存储库时需要考虑的一些常见因素。例如:
- 如果您的团队有集中式版本控制系统的经验,TFVC 可能会避免采用和培训成本。同样,如果您的团队有分布式版本控制系统的经验,Git 可能会更好。
- 如果您需要扩展到非常大的存储库,您可能需要考虑 TFVC。
- TFVC 目前在 TFS 2013 中更好地支持细粒度权限和策略。
- Git 可能更适合地理位置分散的团队,尤其是在网络连接不畅的情况下。
- 对于进行跨平台开发的团队,可能会有更多对基于 Git 的存储库的第 3 方支持。例如,如果您使用 XCode,则内置了对 Git 的支持。
还有以下区别:
TFVC
- 分支文件夹之间的切换既快速又简单。
- 分支是一个“副本”。
- 分支是“便宜的”,但是将多个分支映射到本地机器是“昂贵的”。
Git
- 分支之间的切换既快速又简单。
- 分支是“指针”。
- 存储是“便宜的”,因为没有版本控制数据是重复的。
迁移到 TFVC 而不是 git 的唯一令人信服的理由是迁移平台和开发人员的努力。
如果您有数百名开发人员,Git 是一个重要的培训问题。
如果您的代码在基于服务器的源代码控制系统中,那么它可能处于这样一种状态,即孩子们离开二进制文件,这使得很难迁移到 git。
培训您的开发人员,删除二进制文件,您就可以开始 git。