使用TFS管理同一项目&混帐

时间:2013-08-12 19:43:17

标签: c# git version-control tfs

我公司目前主要使用TFS作为源控制服务器。我们就此进行所有团队合作。但是,我们也希望在组织内以开源格式轻松地发布我们的项目,因此我们已经使用Git服务器设置了本地Github。

我使用Visual Studio 2012的Git插件将我的一个项目推送到此服务器。这被证明是成功的,但是,要求我将绑定到TFS的现有解决方案复制到另一个目录,以便“丢失”TFS绑定。如果我的团队对TFS解决方案进行了任何更改,我需要手动为Git绑定解决方案重新应用它们。

是否可以在同一解决方案上的源控件之间切换?

此时,完全切换到Git不是一种选择。 TFS目前对我们来说更可靠,并得到公司的支持。

1 个答案:

答案 0 :(得分:2)

Git-tf是要走的路(由@DaveShaw评论)。 这应该有效:

首先,使用git-tf克隆您的TFS存储库。 如果您的tfs历史很长并且您只想要快速克隆,则可能需要使用--shallow,但是您不会拥有整个历史记录,只需要最后一次提交(就像它是第一次提交一样)。

git tf clone --shallow http://myserver:8080/tfs/mycollection $/TeamProjectA/Main

将您的GitHub仓库添加为远程

git remote add github  https://github.com/<user>/<repo>.git

最简单的方法是使用新的tfs历史记录删除当前的github历史记录

git push github master --force

然后,每当您想要更新您的github仓库时,请按照以下步骤操作(--deep将使后面的每个tfs提交一个git commit,与--shallow相反)

git tf pull --deep
git push github master