我將是失職,如果我沒有提到的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