2012-02-09 19 views
1

我想知道如果下面是可能的混帳,如果它是 - 如何:分叉從git.debian.org/github上一個混帳回購協議,並把它在本地的gitosis服務器上

  1. 從互聯網上的某處分發一個存儲庫(比方說git.debian.org)。

  2. 把這個分叉的代碼放到本地gitosis服務器上,其中一羣人將通過從本地gitosis服務器克隆它來單獨工作。

  3. 保持這個本地資源庫與互聯網資源庫同步(通過不時地做某種「拉」操作併合並來自互聯網社區的變化/功能)。

  4. 在某個階段能夠將在本地gitosis服務器上開發的代碼合併到互聯網存儲庫(前提是允許這樣做)。

謝謝。

回答

0

你應該做的是這樣的。

1)克隆服務器到本地gitosis服務器。 2)爲你的項目建立一個分支,從那個克隆中分離出來。 3)每個人都從這個分支開始工作並從中撤出。 4)當允許到原始項目時推送。

這可以通過重新綁定主網絡庫來實現更容易的重新同步。

其實在做一個小小的研究來回答這個問題,我發現了一個很好的資源,你應該通讀。

http://progit.org/book/ch3-5.html

正如我說我不知道​​Gitosis的,但很快就審查了幾個網站的過程中IMO會去這樣的事情。當你克隆一個目錄時,我們將使用bootstrap.css front twitter作爲例子。我們會像這樣克隆它。

git clone https://github.com/twitter/bootstrap.git 

這會拉你需要的所有數據,並在本地使用該存儲庫。此克隆庫創建一個名爲bootstrap的目錄。在bootstrap目錄裏面有一個.git目錄,這是git完成記錄的地方。在這一點上,你將採取此.git目錄,並將其複製到bootstrap目錄ourbootstrap.git以外的地方,並將其副本放到gitosis保存它們的存儲庫的目錄中。此時,我會將您的bootstrap目錄移動到bootstrap.orig。然後從該目錄內爲項目創建遠程服務器引用。此目錄只能用於從遠程服務器主分支中重新使用,也可以合併到原始分支中。

克隆gitosis與克隆git hub無異。然後你的團隊會像這樣克隆存儲庫。

git clone https://ourserver.com/ourbootstrap.git 

然後他們與這個存儲庫進行交互,因爲它是原始的。創建分支來完成他們的工作,承諾和推動。你也可以從這個分支的克隆中完成你的工作。

+0

是否應該克隆到gitosis服務器上的具體位置?如何使克隆庫(分支後)成爲「gitosis庫」,以便克隆gitosis的用戶能夠克隆它? – yurker 2012-02-09 20:40:55

+0

我沒有使用gitosis,所以我不能回答這個問題。但是,所有git存儲庫都是其他git存儲庫的克隆。我將在我的答案塊中解釋克隆流程,以免氾濫評論。給我幾分鐘 – thenetimp 2012-02-09 20:44:42

+0

謝謝,很多appretiated。我一定會檢查你提供的鏈接。 – yurker 2012-02-09 20:54:44

2

首先,使用gitolite而不是gitosis。 Gitosis不再積極維護。

  1. 叉在Github回購。
  2. 將其克隆到本地。
  3. 添加回購gitolite/gitosis。
  4. 添加一個遠程到您的本地回購,你克隆指向gitolite之一。
  5. 您現在可以推送或從任何一個推送。
  6. 當您最終想要爲您從中分出的回購提供某些內容時,發出拉取請求。
+0

我想這一點,我做了以下內容: 1)混帳混帳克隆://git.debian.org/~edmonds/unbound.git 2)遠程Git加我的ssh:// @混帳my_gitosis_server_ip/unbound.git 3)git的結帳-b my_master 4)混帳推我my_master 我得到這個錯誤: 錯誤:gitosis.serve.main:存儲庫中讀取訪問被拒絕 致命的:該遠端意外掛斷 – yurker 2012-02-10 15:24:08

+0

查t你已經配置gitosis來取得你的公鑰(如果可以的話,請使用gitolite)。檢查你的url中的外殼是否正確。 – 2012-02-10 18:54:59

相關問題