2012-09-17 38 views
6

我在github上使用git進行源代碼管理和託管。我們正試圖儘可能減少回購。在github上託管項目中使用的boost的子集

我決定增加項目的推動力,該項目相對於我們的要求是相當大的。我已經提取了所需功能的一個子集。現在我對如何在git上處理這個問題感到困惑。我應該將增強的子集添加到存儲庫嗎?如果我將增強作爲子模塊添加,下載大小會有點大(我假設,我沒有測試過)。

這通常是如何完成的?

回答

6

除非您有一個很好的理由否則,請將boost作爲外部依賴關係。 (根本不要將其添加到您的存儲庫)。

4

UPDATE其實一個很好的選擇,見註釋

實際上,你可以避開克隆時,通過指定--depth下載整個升壓歷史,這應該使下載大小相當接近的經典tar.gz檔案。

有關詳情,請參閱Git shallow submodules

在你的情況下,對於升壓綁定它將是git clone --depth 1 git://gitorious.org/boost/bind.git,然後將回購作爲子模塊鏈接(請參閱鏈接的帖子)。

+0

當我這樣做時,如何處理boost項目之間的依賴關係?通過使用bcp,我可以選擇boost的一個子集,並收集所有依賴關係。 – unohoo

+0

你不能這樣做。您必須爲每個存儲庫都有一個子模塊,因此請確定您需要哪一個子模塊。更多的,你不能選擇你想克隆哪個標籤,因爲[git淺克隆到特定標籤](http://stackoverflow.com/questions/8932389/git-shallow-clone-to-specific-tag)。所以忘掉它,並在你的回購中複製你需要的東西。 – CharlesB

+0

是的,我不認爲我可以做我想做的事。我只想留下提升作爲我認爲的外部依賴。感謝您的幫助 – unohoo

相關問題