Git和Team Foundation Server

时间:2009-03-05 10:27:38

标签: git tfs

更新:我不再使用TFS了。但是根据评论我可以看到 git-tfs 显然是现在的方式。

是否有人使用Git作为Team Foundation Server的离线解决方案?

对于Subversion,您可以使用git-svn来保存带有svn后端的私有存储库。

我尝试使用SvnBridge和git-svn来使用TFS。起初看起来很有希望,但Visual Studio认为该解决方案处于TFS版本控制之下并在提交期间发生干扰。

还有其他方法可以将这两者结合起来吗?

9 个答案:

答案 0 :(得分:84)

我开始研究一种名为git-tfs的工具,在某些方面类似于git-svn。

https://github.com/git-tfs/git-tfs

答案 1 :(得分:14)

Microsoft的新产品:Git-tf

公告:Announcing Git Integration with TFS

下载:here

来源(CodePlex):here

答案 2 :(得分:8)

我敢肯定这是可能的,但它的结构将会非常高,并且很可能导致更多的痛苦而不是快乐。我建议选择一个源控制系统并继续使用它。

如果你需要真正的离线支持,那么git很棒,但Windows支持仍然有点不稳定。

答案 3 :(得分:5)

我们决定在工作中这样做。这是一篇关于我们如何做到的博客文章。

http://blog.lozanotek.com/archive/2009/10/20/git-svn_SvnBridge_and_TFS_Source_Control.aspx

刚刚在Github上发现了这个项目..这可能有用,但我还没有尝试过。

http://github.com/spraints/git-tfs

答案 4 :(得分:3)

我可以告诉你这是可能的......

此外,您还可以找到有关具有相同体验的人的一些细节:http://blog.zobie.com/2009/04/using-git-to-avoid-problems-with-tfs/

答案 5 :(得分:2)

您的问题稍微偏离主题,但我编写了一个Powershell脚本,将TFS存储库转换为Git存储库。可能也很有用。

请参阅my Github repo for the script

答案 6 :(得分:2)

TFS现在支持git: tfs news git support

答案 7 :(得分:2)

Brian Harry在new integration of Git repositories以及Team Foundation Service中详细介绍了Team Foundation Server 2013。他提出了一些有趣的观点,这些观点对于企业来说尤为重要,对于那些关心拥有Git存储库的团队而言,这一点非常重要:

  

易于安装 - 我们现在已经将Git安装为无缝部件   安装TFS。没有什么可去追踪和下载。   无需单独安装和配置。您只需安装TFS 2013即可   并自动获得Git支持。

     

支持与服务 - 因为我们正在发货,所以我们支持它。   这意味着如果您有任何问题,可以联系我们的支持和   得到帮助。您将收到安全更新,热修复,定期   更新和更多用于获取它们的方式。好   努力确保您的TFS服务器健康且最新   无论您使用哪种功能。

     

高可用性 - 从早期开始,我们就致力于提供TFS支持   高可用性。我们的Git支持也不例外 - 我们支持所有人   与TFS相同的东西 - 负载平衡和   集群以确保您的服务器将继续运行   硬件和软件故障,如果需要,可以进行地理复制   确保即使在面对时也能保持业务连续性   区域中断,在线备份和恢复作为一个整体的一部分   TFS使您现有的企业级备份和还原策略   (完整,增量和事务日志)将继续工作(给予   你很好的RTO和RPO)。

     

扩展 - 与TFS一样,您可以无缝扩展TFS安装   随着您的需求增长。这包括扩展应用程序   您需要添加额外容量的层和存储层。

     

易于管理 - 我们的Git实现已完全集成到   TFS,以便您的所有管理政策可以继续保持不变 -   服务帐户管理,硬件迁移,软件修补,   备份&恢复,监控,权限管理等。

     

集成身份验证 - 我们的Git支持完全集成了Windows   Active Directory身份验证,以便您的所有访问控制,   审计等可以通过一致和可管理的方式完成   基础设施。作为其中的一部分,所有更改都将针对a进行审核   授权身份,确保您知道谁进行了每次更改。

     

增强的权限 - 我们已经构建(并正在构建)一堆   额外的存储库和权限管理功能   允许管理员“控制混乱”。第一组包括   管理存储库的能力(创建,删除,重命名等)和   存储库级别权限,用于控制读取,写入和管理   权限。我们还包括解决密钥的第4个权限   许多客户已经与Git发生过关系 - “Force push”,其中   有效地使用户能够“改变历史”。虽然我们启用此功能   能力,我们还使管理员能够使用   允许。我们现在也正致力于其他权限 - 比如   分支级别权限,使管理员能够控制   谁可以创建,删除和使用单个分支。通过这种方式,   开发人员可以在本地选择任何方式使用分支,但何时   他们要回到主回购,他们受到限制   按管理员配置的策略。

     

ALM集成 - 当然,我们正在将Git完全集成到其中   TFS ALM工作流程 - 工作项跟踪,构建自动化,   报告,代码审查等。并非所有这些整合都是   完成但我们将通过2013年更新充实它   而且,当我们完成时,我们应该在ALM集成上完全平等   Team Foundation版本控制和Git版本之间的功能   控制。

     

本地化 - 与我们的其他产品一样,我们的Git功能也将如此   本地化为与VS的其余部分相同的语言,使其更多   非英语国家的部分人可以接近。

来源:Enterprise Grade Git Repos

答案 8 :(得分:0)

我同意马特伯克说,我认为http://git-tfs.com是你的选择。但有一些缺点:

  • 你必须提交2次,一次在VS中,一次在Git控制台中

  • 如果要将变更集链接到某个项目,则必须了解有关git-tfs语句的更多信息(rcheckin,...)