如何在公司实施分布式版本控制(TFVC 2015)?

How can I implement a distributed version control (TFVC 2015) in the company?

我不知道在这里问这个问题是否合适,但我需要找到答案(请知道在哪里问)。在整个团队实施该系统之前,我们将在 company.However 中使用默认 Git 存储库实施类似 TFVS2015 的分布式版本控制,我必须 运行 在一台服务器上进行测试service.I 需要知道:

由于我是使用版本控制的初学者,任何其他合适的经验分享都将great.Thanks 用于您的帮助。

How to design the topology in proper way?

TFS 可以在本地安装,也可以使用名为 Visual Studio Team Services 的云托管版本。

VSTS 最多可供 5 个用户免费使用,如果您的开发人员拥有 MSDN 许可证,那么您已经拥有了所需的一切,或者您可以购买额外的许可证。
无需服务器管理或安装、升级或更新,您始终可以访问最新功能。

如果是我,我会选择 VSTS。

What to install in server side?

如果您想安装本地或云托管 VM 进行试用,请获取 TFS 2015 Update 3(这是最新版本)

Ben Day 有一个很好的从头开始的插图安装指南 https://www.benday.com/2015/08/07/team-foundation-server-2015-tfs2015-installation-guide/

这里是官方文档 https://www.visualstudio.com/en-us/docs/setup-admin/install-tfs/get-started

假设您的团队 运行 没有达到 100 人,目前单服务器安装就可以了。您以后随时可以扩大规模。

What is needed in client side?

这取决于您正在开发什么。如果您正在使用 Visual Studio,那么您应该可以开始了。您将在团队资源管理器 window 中添加一个服务器,并能够提取和提交代码。 您可能还想安装 git、Team Explorer Everywhere(适用于 Eclipse)、Visual Studio 代码。

客户 - https://msdn.microsoft.com/en-us/library/ms181304.aspx

Git 命令行 - https://git-scm.com/downloads

Which host is better to use in the service?

不确定我是否理解这一点,但如果您正在谈论在云中托管 TFS,那么请为自己省去麻烦并注册 VSTS。如果你真的想使用 IaaS,那么我个人使用 Azure,但任何其他服务都可以。

Since I am very beginner in working with version controls any other share of suitable experiences would be great.

恕我直言,请不要针对个人。

当您将自己描述为 "very beginner"(我将此解释为您自己从未安装甚至使用过 VCS,除了最粗略的 "add/commit" 操作)?

现在不要误会我的意思,我也遇到过类似的情况,而且经常发生,在大约 15 年前使用 CVS 和后来的 Subversion 经历了这个过程(为了我的辩护,git 不在身边当时)和后来 Git:为一组开发人员建立版本控制系统(+程序),从头开始,一无所知。

回答你的问题:

  • 如果您有机会找到了解这些东西的人,请让他们为您设计系统。

其他:

  • 阅读有关您要评估的 VCS 的可用文档。现在跳过 "tutorials" 甚至 Whosebug,但请阅读实际的官方文档。如果这不能帮助您做出决定,那么这是远离 VCS 的明确标志。如果您根本不理解它(即使经过长时间认真的思考),这就是您需要帮助的明确信号。
  • 找个好玩的项目。
  • 就去做吧。在您的私人 PC 或某些测试机器上创建一个存储库。在这一点上,你使用什么样的资源应该无关紧要。
  • 一直玩到你认为自己理解得很好为止。将您的东西检查到不同的地方并模拟与其他人一起工作(分支、合并、解决冲突等)。
  • 同时,请确保您对什么是分支和合并(每个 VCS 都相同的抽象部分,以及对您的特殊 VCS 的技术含义)有非常牢固的了解。 Think/read 了解开发工作流程(您想使用哪种 branches/feature 分支)。寻找可能在每个 VCS 中都不可用的功能(例如,变基)。
  • If/when 你对软件和一般主题有一种温暖的模糊感觉,然后 去询问细节。如果你完全空白(从你的 post 我假设是这种情况),痛苦和苦难将随之而来(至少对你自己,如果不是你的同事)。

玩得开心,祝你好运。 :)