我們正在從項目中的svn切換到git。已被移動的git-svn克隆回購?
現在我們想要移動的svn回購之一,有很長的歷史,我們想保持。 所以我試着做了git-svn clone,它運行良好。
但是,svn回購在其歷史上已經移動了三次。
整個回購的佈局是這樣的;
repo_root/
trunk/
projA_v1 (existed in the beginning)
projA_v2 (then moved to v2)
projA_v3 (and finally to v3)
projB
projC
branches/
projA_b1
projA_b2
projB_b1
projC_b1
tags/
projA_t1
projB_t1
projC_t1
該項目最初名爲projA_v1,然後轉移到v2,最後到v3。
現在,當我們做git-svn克隆時,我們只能得到自從上次移動2到3以來的歷史。 如果我們檢查svn中的日誌,我們會正確地看到整個歷史。
我能做些什麼來獲得整個歷史?這裏有大約3年的歷史遺失,如果可以的話,我們寧願保留它。
更新: 我試圖做的整個回購git-svn克隆現在從repo_root
。我想我可以做到這一點,然後用Detach (move) subdirectory into separate Git repository中的指示修剪由此產生的git回購,它似乎運作良好。 (修剪位至少)
雖然還存在問題。分支將不會正確行事..我想這是因爲git-svn不會將它們識別爲分支,因爲其中一個分支中的內容不是整個中繼的副本,而只是中繼的一部分。有任何想法嗎?
在一個理想的世界中,我最終會得到一個只包含projA,包含projA_v1和v2的歷史記錄,以及projA分支和標籤中的歷史記錄。