前景
- 已安裝Git洲赵,并了解基本的Git操作,status, add, commit等。
- 有一個(gè)已配置好的review環(huán)境及本地代碼庫(kù)板鬓。
- 了解基本的命令行操作悲敷, cd,cat 等究恤。
- 了解基本的Vim操作俭令,編輯、保存等部宿。
- 了解Gerrit相關(guān)知識(shí)抄腔。
1. 下載安裝 python
https://www.python.org/downloads/release/python-370/ 選擇相應(yīng)windows版本.
這里使用ptyhon3.7.0,下載后理张, 安裝中赫蛇,記得勾選添加到 path,如果沒(méi)有忘記勾選雾叭,手動(dòng)設(shè)置如下:
系統(tǒng)屬性 / 高級(jí) / 環(huán)境變量(N) /雙擊 Path / 編輯 / 新建 添加兩條路徑, 類似于這樣
C:\Users\aaa\AppData\Local\Programs\Python\Python37\
(aaa是我的電腦名稱悟耘,換成自己的)
C:\Users\aaa\AppData\Local\Programs\Python\Python37\Scripts\
最后確定保存。
打開(kāi)終端檢查是否安裝python成功(這里使用Git bash):
$ python -V
Python 3.7.0
$ pip -V
pip 10.0.1 from c:\users\hy\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7)
2. 利用pip安裝 git review 包
$ pip install git-review
如果報(bào)pip安裝超時(shí)的錯(cuò)誤织狐,需要更改下安裝配置的鏡像暂幼,下面改成使用阿里云的配置
在 C盤(pán)用戶目錄下( C:\Users\[用戶名] \
)新建文件夾 pip, 添加配置文件pip.ini
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
重新執(zhí)行一下install
檢查是否安裝成功:
$ git review --version
git-review version 1.26.0
3.添加配置文件
有兩種方式,任選其一:
- 項(xiàng)目中已有.gitreview相關(guān)的配置旺嬉,直接修改git中項(xiàng)目配置即可厨埋,執(zhí)行下面命令:
git remote set-url origin ssh:xxx
git remote add gerrit ssh:xxx
注:xxx為ssh代碼庫(kù)地址
- 新建一個(gè)配置文件
- 比如我的項(xiàng)目叫 UIReact, 項(xiàng)目路徑: /d/code/UIReact ,到項(xiàng)目根目錄下:
新創(chuàng)建一個(gè)配置文件.gitreview
雨效,添加以下內(nèi)容(請(qǐng)修改成自己的配置)
- 比如我的項(xiàng)目叫 UIReact, 項(xiàng)目路徑: /d/code/UIReact ,到項(xiàng)目根目錄下:
[gerrit]
host=review.xxxx.com // 提交的遠(yuǎn)程IP地址
port=29418 //端口號(hào)
project=UI/UIReact // 提交到的項(xiàng)目
defaultbranch=master // 分支
如果不知道具體配置废赞,可查看項(xiàng)目的git的配置文件,cd 到項(xiàng)目文件夾下:
aaa@DESKTOP-MIQKPJL MINGW64 /d/code/UIReact (master)
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"] 6俜巍T稀!8健!參考這里的url =铡!既峡!!
url = ssh://aaaa@review.xxxx.com:29418/UI/UIReact
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
- 檢查review是否安裝成功:
1)git review -s 第一次會(huì)提示輸入用戶名/密碼,跟review網(wǎng)站賬號(hào)一致即可校仑。
2)通常reveiw都會(huì)使用ssh的方式登錄传惠,所以也可直接配置ssh,避免輸入賬戶密碼登錄卦方,
cd ~/.ssh/config
chmod a+w ~/.ssh/config # 添加修改權(quán)限
vim ~/.ssh/config #編輯配置文件,也可直接打開(kāi)文本編輯器修改
Host gerrit
Hostname review.xx.com # gerrit地址
User zy # 填寫(xiě)自己的用戶名
Port 29418
KexAlgorithms +diffie-hellman-group1-sha1
IdentityFile ~/.ssh/id_rsa # 填寫(xiě)自己的公鑰地址
保存后尘吗,執(zhí)行g(shù)it review -s 沒(méi)有報(bào)錯(cuò)提示衬廷,就說(shuō)明成功了
注意:
如果發(fā)生報(bào)錯(cuò),仔細(xì)看報(bào)錯(cuò)原因侧戴,很有可能是配置文件寫(xiě)錯(cuò)了跌宛,比如縮進(jìn)不對(duì),有非法空格蜕猫,修改后重新嘗試 git review -s
4.最終測(cè)試提交
隨便選個(gè)文件編輯一下:
$ vim README.md
aaa@DESKTOP-MIQKPJL MINGW64 /d/code/UIReact (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: README.md
Untracked files:
(use "git add <file>..." to include in what will be committed)
.gitreview (如果上一步使用了ssh的配置登錄哎迄,則不會(huì)出現(xiàn)此文件)
no changes added to commit (use "git add" and/or "git commit -a")
這里如果不希望提交review的配置文件,把.gitreview
文件添加到 .gitignore
文件中翔烁,[忽略.gitignore 文件]
(https://www.cnblogs.com/youyoui/p/8337147.html)
$ vim .gitignore
添加一行: .gitreview , ESC, :wq保存
提交:
$ git add .
$ git commit -m "test git review"
$ git review master
[master e53473e] test review
2 files changed, 3 insertions(+), 2 deletions(-)
去review網(wǎng)站查看提交記錄旨涝, 然后Abandon這次提交,搞定慨默!
可能出現(xiàn)的問(wèn)題:
- git review 安裝成功,但執(zhí)行失敗了潮太,可以試試執(zhí)行
git push origin HEAD:refs/for/master
提交review的代碼。 - 文件克隆時(shí)消别,記得克隆hooks
scp -p -P 29418 review.xxxx.com:hooks/commit-UI/UIReact/.git/hooks/
chmod u+x .git/hooks/commit-msg