本地git,推送到tfs远程仓库

时间:2013-03-06 16:59:23

标签: git tfs visual-studio-2012

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

所以我开始思考也许我可以在本地使用Git并在我的本地仓库中做任何我想做的事情,并且当时机推移到TFS。我知道这是可能的,但最好的方法是什么?我可以只git init当前的repo并将整个.git文件夹放入忽略的列表中,这样TFS就不会检查它或者只是这样做不够简单吗?

在Visual Studio正式更新之前,这将支持git和tfs,我必须使用一些hack来做我想要的。

2 个答案:

答案 0 :(得分:8)

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

答案 1 :(得分: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问题。