2017-08-29 13 views
0

不知道如何寫一個簡潔的標題上這一點,但這裏的情況 -Git的利益整合(通過符號連接)重複圖像

我們保持每星期推一些新的版本,而且每個新版本有一個新的目錄中的回購。每個新版本都具有與以前版本相同的圖像,這有點多餘。我想用符號鏈接替換重複圖像到共享圖像以節省空間(我們推送了500MB)。

Old: 
repo/v1/image1.jpg 
repo/v1/image2.jpg 
repo/v2/image1.jpg (same as v1) 
repo/v2/image2.jpg (same as v1) 
<...> 

New: 
repo/shared_images/image1.jpg 
repo/shared_images/image2.jpg 
repo/v1/image1.jpg -> ../shared/images/image1.jpg 
repo/v1/image2.jpg -> ../shared/images/image2.jpg 
repo/v2/image1.jpg -> ../shared/images/image1.jpg 
repo/v2/image2.jpg -> ../shared/images/image2.jpg 
<...> 

這無疑對資源庫中使用du時,它已被簽出,這是很好後在磁盤上的削減總體規模。

我一直在使用git一段時間,但我不熟悉幕後的魔法。我所做的整合是否還有其他好處?

說什麼你會如何,這是完全不好的做法開始的,但我會很感激它甚至更多,如果實際的問題得到回答:)

+0

你可以將靜態的文件符號鏈接到git倉庫。而不是使每個圖像文件的符號鏈接,我只是符號鏈接整個文件夾。 – 2017-08-29 18:33:48

+0

良好的反饋意見,很可能偶爾的圖像不會重複,並且這些版本化的目錄中還有其他文件不會重複。 –

回答

1

要回答你直接的問題,您已經確定了主好處,更小的工作目錄。在git數據庫中,相同的文件將被存儲爲一個blob,並根據需要被多次引用,因此git端不會節省任何空間。

+0

你是對的,這個工作流程不被認爲是最佳實踐,但我認爲你有一個很好的理由,你爲什麼決定使用這個模型(可靠的第三方訪問快速發展的API超過嫌犯名單)。 您可能會發現,每週向文件系統添加新版本將會變得不可持續(從今天開始的一年內,您將不得不查閱超過50份副本)。由於工作流程的實質性改變通常需要大量的時間進行規劃和實施,因此我建議您考慮一下您的選擇,以便在您達到這一點時有選擇權 – LightBender