2014-03-12 77 views
2

C:\>git tf clone https://companyname.visualstudio.com/DefaultCollection $/companyname/Main OldTFS --deep遷移到TFS從Git的多個分支和他們的歷史

這只是讓我的主要分支歷史。那是git tf

C:\>git tfs clone https://companyname.visualstudio.com/DefaultCollection $/companyname/Main --with-branches

這在合併變更集的一個取幾枝說Please report this case to the git-tfs developpers! (report here : https://github.com/git-tfs/git-tfs/issues/461)後失敗。 git branch給了我這個

Release/20120719.1 
Sprint/Sprint044 
Sprint/Sprint045 
Sprint/Sprint047 
Sprint/Sprint048 
Sprint/Sprint049 
Sprint/Sprint050 
*master 

我已經高達Sprint085分支機構和相當多的發佈分支也。這是git tfs

有沒有什麼辦法與git tf,我可以獲取其他幾個正確創建合併提交的分支,以便我可以正確地看到歷史?

回答

3

Disclamer:我將添加的分支支持的git-TFS的一個...

算了git tf它不支持分支。

這在合併變更集的一個取幾枝說我應該告訴他們的信息,使他們能夠提高後失敗。

也許你應該接着git-tfs給出的鏈接;)

的聯繫是this one。在那裏的消息,你被告知work in progress有更好的分支支持。

你應該真的嘗試它。它的狀態非常好,並且支持其他兩種分支模式:分支重命名和無基本合併。有了這個最後2種模式,我希望大家可以支持所有的分支模式(但由於TFS是非常--in壞meaning--和大量凌亂suprising,我不能guarranty!)

如果你可以」沒有支持所有的分支機構,它仍然是手動完成的方式!但是,很長:

  • 克隆只有在另一個倉庫
  • 分公司在主存儲庫
  • 使用grafts到您的分支鏈接到它的父分支(你應該在TFS找到manualy取這個分支好。因爲TFS是非常糟糕的!)
  • [可選]使用git filter-branch使鏈接永久。

PS:也許你甚至可以編寫一個腳本來自動所有...

+0

我結帳[這](https://github.com/pmiossec/git-tfs/tree/rename_branch)科。但無法編譯它。 :( – IsmailS

+0

對不起,現在遞歸克隆 – IsmailS

+0

我們甚至在TFS中創建了子目錄的分支(在我們現在不用的舊分支中),這可能是失敗的原因嗎? – IsmailS