Ubuntu12.04 server安裝Gerrit

來源:互聯網
上載者:User

前一陣子在CentOS 6.2上安裝了Git/gitosis/ReviewBoard,那個煩啊。主要是gitosis這個東西管理不方便,其次是 Review board安裝也比較繁瑣,需要在用戶端使用hook。

雖然大家已經開始使用,而且用起來感覺比較簡單。但是review board工作流程過於寬鬆,程式員不經過批准也可以push代碼到遠程伺服器上。基本上屬於君子協定,不太適合對代碼提交審查嚴格的環境。

所以現在開始試用gerrit。這次使用Ubuntu12.04 server。首先說一下gerrit的優勢,它已經提供了訪問git server的認證和project管理功能,因此避免了使用gitossi或者其他繁瑣的管理工具。

1.安裝git

sudo apt-get install git-core git-doc


2.添加gerrit2使用者,密碼也是gerrit2

參考我的部落格:http://blog.csdn.net/sheismylife/article/details/7584656

3.下載gerrit最新的war包

http://code.google.com/p/gerrit/downloads/list

我用的是2.4版本。

4.準備Java運行環境

現在可以安裝openjdk7了。

apt-get install openjdk-7-jdk

需要重建軟連結,否則仍然在用openjdk-6

rm /etc/alternatives/javaln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java /etc/alternatives/java

5.修改war檔案屬性

chown gerrit2:gerrit2 gerrit-2.4.2.war
mv gerrit-2.4.2.war /home/gerrit2/su - gerrit2chmod -R 777 ./gerrit-2.4.2.war

gerrit2是war檔案的擁有者,並且允許其他使用者執行。

6.建立gerrit網站

mv gerrit-2.4.2.war /home/gerrit2

su - gerrit2

java -jar gerrit-2.4.2.war init -d review_site

回答一系列問題:(絕大多數預設即可)

如果輸入錯誤,可以刪除review_site目錄,重新執行上面的命令。資料庫用預設的H2,我用MySQL老是出錯。

7.SMTP設定

在review_site/etc/gerrit.config中設定如下:

[sendemail]enable = true        smtpServer = smtp.gmail.com        smtpServerPort = 465        smtpUser = youname@gmail.com        smtpEncryption = sslsmtpPass = youpwd        sslVerify = false        from = Code Review <yourname@gmail.com>

8.注意事項

a.我碰到啟動失敗,然後重新啟動gerrit 就好了

b.重新啟動必須要用全路徑,相對路徑不行

~/review_site/bin/gerrit.sh restart

c.第一次開啟網站註冊使用者的就是管理員(這種玩法很有意思,不過最好有個文檔)

d.我註冊用的是google帳號,如果沒有vpn翻牆肯定是不行的

e.同樣因為用了google帳號,訪問網站必須要用vpn翻牆

f.建立project通過網站就可以了,也可用命令列

注意,通過網站建立的時候,需要選中下面的選項。

Create initial empty commit

g.必須建立一個group,把自己帳號加進去,然後project裡面要在push許可權內加入這個group

即便你是owner許可權,也不能通過git push提交資料。

h:要添加用戶端的公開金鑰內容,用戶端才能訪問

連接埠是29418,clone命令參考下面的格式:

git clone ssh://chenshu@your_server:29418/REPOSITORY_NAME.git

i.用戶端配置必須和網站上使用者一致。用下面的命令。

git config --global user.name yourname

git config --global user.email youremail

j.網站訪問的預設連接埠是8080

如果改為80連接埠,需要root許可權啟動,否則會啟動失敗。使用root會帶來安全問題。自己衡量了。

k.修改etc/gerrit.config裡面的web url

[gerrit]
basePath = git
canonicalWebUrl = http://localhost:8080/

將上面的localhost改成網域名稱或者IP地址。

如何進行程式碼檢閱,會在以後的文章裡面介紹,本文僅僅是描述如何安裝和基本的運行。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.