2014-06-07 60 views
1

我有一個TFS託管混帳回購協議(如https://tfsfoo.com/_git),我需要把它移動到另一個主機TFS(如https://tfsbar.com/_git我應該如何將託管的git倉庫移到新的主機上?

我的解決方法是做如下(根據建議修改下面用--mirror ):

  1. 混帳克隆https://tfsfoo.com/_git/proj --mirror
  2. 遍歷分支(GIT分支-r),然後git的分支--track每個那些(如this post
  3. 注意的,我已經推到新的回購(沒有分支),所以 - 鏡子不是一種選擇。
  4. 混帳拉
  5. git的遠程設置網址起源https://tfsbar.com/_git/proj
  6. 混帳推--all --follow標籤

現在 - 我知道我可以只是嘗試這個,看看它是否工作(和我可能會等待答案),但考慮到有幾種方法可以處理git中的所有內容,我想知道是否有更好的方法 - 或者更重要的是,如果此方法有任何問題(我是git相對較新)。

回答

3

由於您可以通過網絡訪問第二臺服務器,因此推送是最簡單的方法。

要爲所有遠程跟蹤分支創建本地分支機構,可以使用我通常在「git pull all branches from remote repository」中使用的單行分支。

另一種方法是git clone --mirror第一次回購,並將其推送到第二臺服務器as in this answer

+0

ahh - 我不知道--mirror(也沒有找到我的搜索中的第一個鏈接,因爲這可能是該問題的重複)。 – Alan

+0

@Alan不,你的問題說明了另一種方法,當你呆在同一個本地倉庫(而不是用'git clone --mirror'做一個裸倉庫) – VonC

+0

明白了 - 這是有道理的。 – Alan

0

您可以通過git-copy實現此目的。

git copy https://tfsfoo.com/_git https://tfsbar.com/_git 
相關問題