2010-06-15 109 views
2

我是Git的新手。我在linux服務器上創建了一個主存儲庫。同一臺服務器將由5個3個用戶組使用。我想爲每個組創建一個本地存儲庫。然後小組成員應該爲每個小組創建一個本地存儲庫,使用內容並將修改提交給組的本地存儲庫。主存儲庫和本地存儲庫在同一臺機器

我應該怎麼做呢?

回答

3

您可以在您要創建的副本的目錄運行

git clone --bare /path/to/master/repository 

創建主資料庫中的副本。我建議用不同的路徑做5次,以創建5個不同的主存儲庫本地副本。然後每個組成員都可以運行

git clone /path/to/group_local/repository 

創建其組的本地存儲庫的單個副本。所以你有三個「級別」的存儲庫:主,本地,個人。

當你克隆一個倉庫,除非使用--bare選項,git會設置克隆的remote.origin.url屬性指的是原來的。這意味着,如果你在克隆運行

git pull 

,它會拉從原始資料庫的變化,如果您在克隆運行

git push 

,它將從克隆推變化原本的。因此,當您的小組成員在其各自的存儲庫中進行修改時,他們可以運行git push,並且這些修改將被「上傳」到其組的本地存儲庫。在克隆存儲庫中,也可以通過指定git pull命令的URL(或預配置的遠程名稱)來複制另一個存儲庫(我的意思是從最初克隆的存儲庫除外)中的更改。您也可以推送到任意一個其他存儲庫,儘管如果您要嘗試的話還是需要注意一些事情。

0

首先,我建議讓用戶選擇他們想要的存儲庫數量,這是完全不相關的,只能用於創建尷尬的情況。

我將組織它的方式激發了「仁慈的生命的獨裁者」和中尉模型。

BDFL是將中尉儲存庫的變更集成到頂級儲存庫主分支中的人。

中尉將貢獻者的變化整合到他們的回購中。最好在一些明智的分支。開發人員將他們的工作分支推向中尉,或者中尉將其從回購中退出,通過電子郵件發送補丁集,無論效果如何。

請注意,這些「集成」可以在很大程度上使用像哈德遜這樣的CI服務器自動執行。

貢獻者在每個任務的分支中工作並定期與MASTER存儲庫合併。只有在特殊情況下從中尉回購。 (現在只有當移動速度足夠快時才起作用)。最好從主人那裏撤回,以減少循環中的等待時間,並避免其中一名中尉生病時的「不愉快」。