Gerrit開發配置指南¶

Gerrit開發配置指南¶

準備工作:地址映射¶
Windows下: C:\WINDOWS\system32\drivers\etc\hosts
Linux下: /etc/hosts 命令:sudo vi /etc/hosts
往hosts文件添加:

192.168.1.152 id.runyee.com
192.168.1.152 review.runyee.com
192.168.1.152 www.runyee.com

一. 註冊Gerrit賬戶
請提交相關用戶信息至SCM處單獨開通賬戶

二. SSH配置(又叫配repo)
~$ cd ~
~$ mkdir .ssh 如果有.ssh文件夾,就直接執行 ~$ cd .ssh 進入.ssh
~$ cd .ssh
~/.ssh$ ssh-keygen -t rsa -C [email protected] (注:一路按回車即可)

在.ssh文件夾裏添加新文件config, 內容如下:

Host runyee
Hostname www.runyee.com
Port 29418
User huangchaojun(在gerrit裏填寫的用戶名Username)
PubkeyAuthentication yes
IdentitiesOnly yes
PasswordAuthentication no
IdentityFile ~/.ssh/id_rsa

進入gerrit - Settings - SSH Keys,填入(用戶名)Username(必須和config文件裏的User一致),點擊"Change Username"保存;
將~/.ssh/id_rsa.pub的內容複製到"Add SSH Public Key"一欄,文件內容如下所示:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCgpLHmakdPDICCN8uwkkBiivMgXzofXCQ1f/PPaBri2dwseIkGY64bCdlZFcTfv3SchdAsv04adZmx31gszzRyY/rjlOGaIzkC5hroxY1AIfewryMH8I36M/0Sx/qV5I/7bQNu6osx1ZUtkvqF/yhy1j80vdWCVQ4c2M5Qlkqo+E+NeAoHjZtJaIVzMLgV0V1kfTwYQVHGu9a7UJH9PCKCpTAVvX6rA6ELZwcWUrv+apLlT9trxIHCHdehJ4kUkOFI4ouaUZ9/uX0P/uxlkGGeVWmguBnvE1iOsiq+Fmsqc1kcQXdJ70Qum1vlvXG7KDxYSi0PvfO/J+Ba9bgbBolX [email protected]
點擊"Add"按鈕,保存SSH Public Key.

~$ ssh runyee

或者

~$ ssh -p 29418 剛纔註冊的用戶名[email protected]

如果出現

gerrit: no shell available
Connection to review.vanzo.com closed.

就說明連接成功了.

如果遇到錯誤:

Agent admitted failure to sign using the key.
Permission denied (publickey,password).


請在 .bashrc 中設置環境變量:

export SSH_AUTH_SOCK=0
三. 代碼獲取
配置對應gerrit用戶驗證環境
git config --global user.name huangchaojun
git config --global user.email [email protected]

1)單個項目獲取
運行ls-projects命令查看所有相關Git項目:

ssh runyee gerrit ls-projects

使用Git命令Checkout單個項目,例如:

git clone runyee:tools/repo
2、整套代碼獲取(以MT7172-KK1-V1.7爲例)
curl http://192.168.1.152/repo/repo > repo
chmod +x repo
./repo init -u ssh://runyee/MT7172-KK1-V1.7/manifest.git
./repo sync
注:
可將~/bin添加至PATH環境變量
echo "export PATH=~/bin:$PATH" >>~/.bashrc
. ~/.bashrc
curl http://192.168.1.152/repo/repo > repo 下載 repo, 將其拷貝至~/bin/目錄
避免每次獲取單獨獲取repo

四. 代碼提交流程
1、獲取相關代碼,開發修改,編譯驗證,注意相關代碼格式和註釋
2、提交流程(請熟悉git基本命令)
運行git add XXfiles添加相關修改文件到緩存區
運行git commit提交至本地倉庫,再運行:
git push runyee HEAD:refs/for/branch(對應分支)

說明:
如果不是用repo來獲取,而是git clone runyee:platform/packages/apps 相應目錄
可以用:git remote -v來查看具體的分支是master還是release。
如果是origin:
提交改動變爲:git push origin HEAD:refs/for/F660
之後就可以在Gerrit界面看到剛纔的提交.
3、代碼審覈與驗證
所有代碼都應該走 gerrit. 大致流程爲:

1)Developer 開發, 提交到 gerrit 庫

2)Reviewer review 代碼

3) scm apply 這個 patch

4) scm 將 patch 打到相關分支(比如, 從master => release)

5) scm inspector 每兩天檢查一下 scm 的代碼合併是否正確。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章