我将是失职,如果我没有提到的git-TF并不意味着是一个替代适当的迁移和集成工具。
这就是说,如果你想尝试,你不能简单地git tf clone
一个存储库,然后git tf checkin
到不同的服务器。 git-tf
映射提交到变更集以确保git和TFS存储库的一致性。因此,当您更改远程时,它会查找新服务器中的这些变更集。
如果您确实想将其推送到新服务器,您需要删除变更集以提交地图。
最简单也是最可靠的方法 - 不干扰配置数据 - 就是简单地复制git存储库并将克隆的存储库设置为新服务器。然后你可以git tf checkin
它:
$ git clone ~/path/to/repo ~/path/to/cloned_repo
Cloning into cloned_repo...
done.
$ cd ~/path/to/cloned_repo
$ git-tf configure https://youraccount.visualstudio.com/DefaultCollection $/YourProject
Configuring repository
$ git-tf checkin
Connecting to TFS...
Checking in to $/YourProject: 100%, done.
由于git-tf
映射只有一个TFS仓库,这也可以让你做增量运动。如果在初始迁移之后存在想要迁移的新变更集,可以将它们提取到克隆的git存储库,然后将它们推送到新的TFS服务器而无需重新配置。
$ cd ~/path/to/cloned_repo
$ git pull ~/path/to/repo
$ git-tf checkin
Connecting to TFS...
Checking in to $/YourProject: 100%, done.
我还发现删除'.git/git-tf'文件夹可以达到同样的效果 – skayred 2013-04-23 04:03:31
今天我明白了,你说了什么。现在它为我工作。尽管如此,如果在以叙述的方式解释步骤之后添加一步一步的指令,这个答案可能会更好。我从这个答案开始,几天后,我最终按照你描述的方式完成了这些步骤。我不得不艰难地学习它。 – 2014-01-20 19:53:40
@SaschaGottfried很高兴这是有帮助的,我为混乱道歉。感谢您的编辑,我同意这更有用。 – 2014-01-20 20:55:52