2014-12-03 71 views
1

我有一個場景。我有兩個實例,Gerrit的實例1和Git的實例2。我想了解git如何攔截直接來到實例2的請求?
可以安全地假設我必須遠程安裝gerrit,而不是git實例。
在不同的機器上安裝Gerrit和git

當初始化格里特,交互CLI屏幕詢問這應該是本地(?)的目錄,例如/ home/ME /混帳回購(GIT回購裏面我有我的項目的git倉庫位置.git文件)。如果不是本地存儲庫,我指定一個遠程存儲庫URI,比如說ssh://[email protected]/root/project.git,首先它會起作用嗎?如果是的話,它是如何攔截所有推送,拉...請求到ssh://[email protected]/root/?

+0

重複的http://stackoverflow.com/questions/26760661/how-to-setup-gitolite-and-gerrit-on-separate-ubuntu-servers/26774084。 – 2014-12-03 09:13:34

+0

感謝您的鏈接Magnus。然而,事情是,我希望gerrit只「關照」遠程文件夾中的一個存儲庫(許多存儲庫)。一種方法是在所有其他存儲庫上提供完整的權限(如果我們這樣做,每個人都需要在本地設置git-review,這是我們不想要的)。我們只需要一組特定的人(在特定存儲庫上工作)使用gerrit。當所有人都不會使用gerrit的服務時,爲什麼要打擾他們。 – 2014-12-03 09:28:16

+0

不,您的用戶不必設置git-review。 Gerrit的評論功能是可選的,您可以將其用作通用Git託管軟件,例如Gitolite。沒有人會因爲轉向Gerrit而煩惱(除了遷移本身)。 – 2014-12-03 09:51:10

回答

1

這是可能的。首先明白,gerrit將作爲遠程git的分期工作場所。這意味着當用戶提交補丁集時,首先需要進入Gerrrit的git工作區。通常$ GERRIT_HOME/git /。現在需要啓用複製,以便將此repo同步到遠程git服務器,最終他們想要提交代碼。在複製設置和Git項目設置一些有用的鏈接可以在這裏找到:

https://review.typo3.org/plugins/replication/Documentation/config.html

Importing already existing git repo with multiple branches and tags into gerrit

樣品replication.config它可以幫助你:

[remote "github-remote-name"] 
    url = [email protected]<remote-git-server>/${name}.git 

記住,這$ {name}是一個魔術關鍵字,需要與您要同步的回購相匹配。爲了同步您可能擁有的許多選擇性回購,請按照上述鏈接中的指導進行操作。

希望這會有所幫助。

+0

感謝您的幫助。但是,我注意到您提到$ {name}關鍵字可以幫助我將gerrit與任何「特定」存儲庫保持同步。我有一個小的跟進,有沒有辦法在本地實現相同的結果?我的意思是,我希望只在特定的存儲庫(如product.git)上執行gerrit-review,而不在utilities.git上執行,這兩者都可能存在於同一個文件夾中。一種方法是授予所有用戶公用程序的完全權限,這可以繞過規則來實現結果。有沒有直接的方法呢?提前致謝。 – 2014-12-12 06:58:10