且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

使用Visual Studio 2013时,TFVC(TFS版本控制)和用于源代码控制的Git之间有什么大区别?

更新时间:2022-04-22 04:14:47

使用VS 2013时,用于源代码控制的TFS和Git之间有什么大区别?

What are the big differences between TFS and Git for source control when using VS 2013?

MSDN有一个关于所有功能和区别的非常详尽的页面在Team Foundation版本控制和Git之间.

对我而言,唯一的好处是本地存储库(不是说微不足道)和IoS开发支持吗?

Is the only benefit in my case a local repository (not saying that's insignificant) and IoS development support?

不,还有更多,但它们通常是Git的高级方案.本地存储库,脱机支持和历史记录的完全本地保真度非常强大,而Visual Studio就是开箱即用的.还有其他一些很棒的功能!从一个存储库分支和合并到另一个存储库的功能非常强大.我建议您查找 Pro Git书. TFS中的Git只是另一个git服务器,它具有标准Git几乎具有的所有功能.

No, there's lot more, but they're often advanced scenario's of Git. Local Repo, offline support and full local fidelity on history is incredibly powerful, you get that out of the box with Visual Studio. There's a few other features that are great too! The ability to branch and merge from one repository to another is very powerful. I recommend you look up the Pro Git book for those. Git in TFS is just another git server, it has pretty much all features that the standard Git has.

合并前重写历史记录的功能使您可以删除或合并许多较小的变更集,从而使历史记录更整洁,更易于阅读.

The ability to rewrite history before merging allows you to remove or combine a number of smaller change sets, so that the history is cleaner and easier to read as a human.

这是Git命令行界面的唯一缺点(有人会认为这不是缺点;-P).

Is the only drawback to Git the command line interface (some would argue that's not a drawback ;-P).

TFVC也有一个命令行,人们只是不使用它.对于那些想使用Git且从未做过比TFVC更多的事情的人,他们可能真的不需要离开UI,尽管他们不会获得很多很棒的功能...

TFVC has a command line too, people just don't use it. For people that want to use Git and never do much more than TFVC does, they probably won't really need to leave the UI, they won't get a lot of the cool features though...

可能还有其他一些缺点,主要是因为它与人们习惯的有所不同.如果您不花时间去学习git在做事时会做什么,那么用脚射击自己并不难.诸如Rebase和Squash之类的功能确实强大,并且创建了非常干净的历史记录,但是它可能会给人们带来一个问题,即如果使用不正确,它们将无法合并. TFS可以放置一些安全设置以夺走版权, git存储库上的愚蠢决定.

There might be a few other drawbacks, mostly due to the fact that it's different than what people are used to. It's not too hard to shoot yourself in the foot if you don't take the time to learn what git does when you do things. Things like Rebase and Squash are really powerful and create a very clean history, but it can leave people with the problem that they can't merge anymore if used incorrectly. TFS has the ability to put some security settings to take away the rights to make very stupid decisions on a git repository.

对于Windows上的Git用户来说,很酷的附加组件是 PoSHGit .它在Powershell命令行上提供了命令自动补全功能.

A very cool add-on for Git users on Windows is PoSHGit. it provides command autocompletion on the Powershell commandline.

您是否曾在VS 2013 GUI for Git中体验过?在没有命令行界面的情况下是否足以支持基本的分支/合并?

Have you experienced in the VS 2013 GUI for Git? Is that enough to support basic branching/merging without the command line interface?

它具有基本操作所需的一切.但是您确实需要能够可视化不同的分支以了解发生了什么.由于Git服务器和本地存储库只是Git,因此任何git客户端都可以在这里为您提供帮助. SourceTree是这里的一个选项. Windows的Git客户端是另一个.

It has all you need for basic operations. But you do need to be able to visualize the different branches to know what's going on. Since the Git server and local repo are just Git, any git client can help you out here. SourceTree is an option here. The Git for Windows client is another.

对于标准操作,签入,签出,合并,分支(或推,拉,获取,提交,合并)的UI都可以正常工作.

For standard operations, check-in, check-out, merge, branch (or push, pull, fetch, commit, merge) the UI works just fine.

是否有针对Git的详细启动指南,显示Git与VS 2013一起使用? MS有一个视频,用于将现有的Git存储库集成到VS 2013中,但是我是否在寻找从零开始使用Git和VS 2013的视频?

Is there a detailed start-up guide for Git that shows Git being used with VS 2013? MS has a video for integrating an existing Git repo into VS 2013, but I'm looking for a start from scratch with Git and VS 2013?

在许多地方都可以使用Git入门...以下是一些选择:

Starting with Git is available in a number of places... These are a few options:

  • MSDN Docs: Use Visual Studio with Git
  • MSDN Blog: Getting started with Git
  • There's a Hands-on lab for the Brian Keller VM.
  • Microsoft Virtual Academy: Using Git with Visual Studio 2013 Jump Start
  • Pluralsight: Git for Visual Studio Developers

其他好读物

  • MSDN Docs: Git vs TFVC Summary
  • Syncfusion: Git succinctly
  • Setting the Visual Studio Merge tool as default for Git
  • using PoshGit from within Visual Studio
  • Apress: Pro Git
  • ALM Ranger Git for TFVC users guidance.

还有一些值得安装的工具:

And a few tools worth installing:

  • PoshGit
  • SourceTree
  • Git Diff Margin