15

我厌倦了向我的队友解释使用 DVCS 而不是 CVCS 的好处。他们中的一些人害怕学习曲线,其中一些人看不到任何理由,因为对他们来说:“都是一样的”。就我个人而言,我厌倦了 TFS 及其问题。每次当我需要处理一些小的“修复”时,我都必须在主开发分支上工作并将我的东西搁置一旁,导致与 Git 相比,使用 TFS 进行分支非常痛苦。每次从以太网切换到 wifi 时,我都必须重新连接我的 VPN 客户端,这种情况经常发生。

所以我开始想也许我可以在本地使用 Git,并在我的本地 repo 上做任何我想做的事情,到时候把它推送到 TFS。我知道这是可能的,但最好的方法是什么?我可以只git init使用当前的存储库并将整个.git文件夹放入忽略列表中,这样 TFS 就不会将其签入或者仅仅这样做还不够?

在 Visual Studio 的官方更新到来之前,它将同时支持 git 和 tfs,我必须使用一些技巧来做我想做的事。

4

2 回答 2

8

git-tfs https://github.com/git-tfs/git-tfs更适合我。易于安装。便于使用。虽然有点慢,但如果你不介意 - 效果很好

于 2013-03-13T17:03:41.550 回答
5

是的,你是完全正确的——你只需要在 TFS 中处理 .git 。通常,GIT 所做的一切都保存在 .git 中,因此如果您有办法将其排除在 TFS 之外(最坏的情况是移出然后移回),那么您可以毫无问题地使用 GIT。

请注意,可能还有其他与 GIT 相关的文件需要处理,.gitignore 是最常见的示例。

我已经使用 .git 和相关文件的意识成功地覆盖了 GIT 和 SVN。(我知道有一个 git-svn 包;但这不适用于我的特定需要。)

另外,请查看:

  git init --separate-git-dir=<other-location-for-dot-git>

您仍然需要处理本地目录中的符号链接,但也许 TFS 问题更容易处理。

于 2013-03-06T17:04:04.523 回答