我對整個版本控制還很陌生,對於 git 更是如此。我最近在我的電腦上安裝了 git 並將其設定在 NAS 伺服器上。
但是,我有幾個客戶端資料夾,每個客戶端資料夾有幾個專案資料夾。
這些客戶端資料夾中的每一個都是一個龐大的儲存庫,包含其中的每個項目。
我想知道的是,有沒有辦法打破這個?因此,例如:
NAS 是我的“起源”,並安裝了 gitolite
在computer1上,我在曾經建立的客戶端資料夾中擁有每個專案資料夾(乾淨分支),
在computer2中我做不是客戶端分支的新簽出(因為該分支中的所有項目都已完成,我不需要它的工作副本),但我做為該客戶「newproject」建立一個全新的專案資料夾。
有沒有辦法從computer2提交並推送到NAS儲存庫?
或者也許有更好的方式來組織這一切?
答案1
更好的Git 儲存庫組織是每個客戶端專案擁有一個儲存庫(即,客戶端資料夾內有多個儲存庫:每個與專案根目錄相符的客戶端資料夾子目錄內有一個.git) 。
每個客戶擁有一個巨大的回購協議的想法不一定是一個好主意,特別是:
- 如果該資料夾由可以相互獨立發展的項目組成。
- 如果總體積很大(這意味著任何克隆都會很大)
如果其中一些項目連結在一起,您仍然可以將它們視為一個(父)儲存庫,並具有以下概念:子模組。