git-tf 和 git-tfs 有什么区别? [英] What's the difference between git-tf and git-tfs?

查看:32
本文介绍了git-tf 和 git-tfs 有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近对 ​​TFS 感到非常厌烦.我听说隧道尽头有灯.显然,我可以使用 git-tf 或 git-tfs 并将我的代码视为由 git 管理,但能够向/从中央 TFS 服务器推送/拉取.

I've recently been getting really fed up with TFS. I've heard that there is a light at the end of the tunnel though. Apparently I can use either git-tf or git-tfs and treat my code as if it was managed by git, but be able to push/pull to/from a central TFS server.

我的主要问题是我不确定我应该使用其中的哪一个.有微软官方支持的 git-tf,还有已经存在很久的 git-tfs.这些之间有什么区别,我应该先尝试哪些?

My main question is I'm not sure which one of these I should use. There is git-tf which is officially supported by Microsoft, and there is git-tfs which has been around a lot longer. What's the differences between these and which should I try out first?

推荐答案

免责声明:我 启动了 git-tf 项目,虽然该项目现在在没有我作为频繁贡献者的情况下非常有能力,但你绝对应该考虑我的对此的看法强烈有偏见.(而且,假设您使用的是 Windows,可能会出乎意料.)

Disclaimer: I started the git-tf project and although the project is now in very capable hands without me as a frequent contributor, you should absolutely consider my opinions on this to be strongly biased. (And, assuming you're on Windows, perhaps unexpected.)

这两种工具有两个根本区别:

There are two fundamental differences between the two tools:

  • git-tfs 是为 Windows 用户构建的,并基于 .NET TFS SDK 编写.TFS SDK 不能在 Mono 下运行,因此这使得 git-tfs 不适合跨平台使用.

  • git-tfs was built for Windows users and written on top of the .NET TFS SDK. The TFS SDK will not run under Mono, so this makes git-tfs unsuitable for cross-platform use.

git-tf 是为跨平台用户构建的,并基于 Java TFS SDK 编写.因此,它将在 Java TFS SDK 支持的任何地方运行(Windows、Mac、Linux、AIX、HP-UX、Solaris 等...)git-tf 被明确创建以允许 Xcode 用户访问 TFS.

git-tf was built for cross-platform users and written on top of the Java TFS SDK. Thus, it will run anywhere that's supported by the Java TFS SDK (Windows, Mac, Linux, AIX, HP-UX, Solaris, etc...) git-tf was explicitly created to allow Xcode users to access TFS.

当然,在 Windows 上,您可以使用任何一种.我不一定会说一个比另一个好.但我会说:

On Windows, of course, you can use either. I'm not going to necessarily say one is better than the other. But I will say:

  1. git-tfs 的最大抱怨是它不能在 Mac OS 上运行.如果有办法让 git-tfs 跨平台,那么 git-tf 几乎肯定不会存在.

  1. My biggest complaint about git-tfs is that it won't work on Mac OS. If there was a way to make git-tfs cross-platform, then git-tf almost certainly wouldn't exist.

git-tfs 在某些情况下比 git-tf 更快.在最初的几次修订中,性能不是我们的首要任务,正确性才是.

git-tfs is faster in some cases than git-tf. Performance was not our priority in the first few revisions, correctness was.

因为 git-tf 具有广泛的平台支持矩阵,这意味着它的功能必然受到限制.例如,没有 UI.git-tfs 另一方面,有一个 checkintool 命令可以打开正常的 TFS Checkin 对话框.这对于可视化您的更改非常有帮助.(如果我记得,你可以从那里打开一个适当的视觉差异等)

Because git-tf has a wide platform support matrix, this means that its functionality is necessarily constrained. For example, there is no UI. git-tfs, on the other hand, has a checkintool command that will open the normal TFS Checkin dialog. This can be exceptionally helpful in visualizing your changes. (If I recall, you can open up a proper visual diff from there, etc.)

git-tf 的工作原理是直接填充 git 存储库,将 TFS 对象直接下载到 git 对象数据库中.git-tfs 通过在隐藏文件夹中创建 TFS 工作文件夹映射,然后从中填充 git 存储库来工作.这里有一个磁盘损失,所以如果你有超大的存储库,你可能会感觉到这一点.

git-tf works by populating the git repository directly, downloading TFS objects directly into the git object database. git-tfs works by creating a TFS working folder mapping in a hidden folder, then populating the git repository from that. There's a disk penalty here, so if you have superginormous repositories, you might feel this.

git-tfs 可以尝试将您的 TFS 分支映射到您的 git 分支.很多人会认为这对 git-tfs 有利,但我不认为:git 的分支模型(在存储库级别)和 TFS 的分支模型(在存储库中表示为文件夹)是完全不同,除了最简单的工作流程之外,其他任何事情都会引起问题.但您的里程可能会有所不同.

git-tfs can try to map your TFS branches to your git branches. A lot of people will see this as a positive for git-tfs, though I don't: git's branching model (at the repository level) and TFS's branching model (represented as folders in the repository) are so radically different as to cause problems in anything but the most simplistic workflows. But your mileage may vary.

git-tfs 由社区积极开发.git-tf 尚未被社区采用.

git-tfs is actively developed by a community. git-tf has not had the community adoption.

我不想让它听起来像是在说 git-tf 不好.不是.我觉得其实还不错.但这可能不是您的最佳选择.

I don't want to make it sound like I'm saying git-tf is bad. It's not. I think it's actually pretty good. But it may not be your best choice.

更新:git-tf 已停止使用.Microsoft 不再维护或支持它.如果您想要双向 TFS <-> git 解决方案,我们推荐 git-tfs.

这篇关于git-tf 和 git-tfs 有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆