2017-10-15 117 views
1

我們正在將GIT合併到我們的項目中,現在我們正在使用SVN作爲版本控制工具。我們的SVN項目存儲庫包含大約30個活動分支,並嘗試遷移到GIT,每個分支大小爲6 GB。GIT處理大量分支

正如我們所知,GIT克隆命令會從所有分支下載文件,在我們的例子中它是30 * 6 = 180 GB。我們無法下載180 GB並開始工作,那麼我們可以做些什麼來實現這一點。

任何幫助表示讚賞。

回答

1

希望您可以從您的遷移中刪除任何二進制文件(意思是ignoring any path,包括您可以從代碼重新生成的元素)。

或者,你就需要在其他地方引用這些大要素,使用Git-LFS

Git的大文件存儲(LFS)取代大的文件,如音頻採樣,視頻,數據集,並與內文本指針圖形Git,同時將文件內容存儲在遠程服務器(如GitHub.com或GitHub Enterprise)上。

GitHub支持Git-LFS,因爲他們首先提出了這個問題。

+0

感謝您的幫助VonC。即使我們將一些罐子戰和其他二進制文件移動到某個存儲庫並通過maven進行引用。我可以在每個分支中減少大約3 GB,但仍然以30 * 3 = 90 GB結束。因爲我們需要所有30個分支機構,因爲很多團隊都在不同的分支上工作 – Akshobhya

+0

@Akshobhya * one *項目需要的文件量,還是代表多個不同的項目,每個項目都有自己的歷史記錄? – VonC

+0

這些文件是一個項目所需要的,因爲我們在項目中有幾個模塊,並且每個模塊都相互依賴 – Akshobhya

2

git(儘可能多的來源控制工具)被設計爲主要包含文本文件。它的「差異」機制對於二進制文件並不適用,並且實際上存儲庫大小可能會爆炸。

由於顯然6GB不是文字,我建議重新考慮這個選擇。

此外,如果您的分支機構如此不同,也許您應該將它們分成獨立的存儲庫。