SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Gerrit Code Review 教學
林軒宇 2014.04.01
Coding convention
每個縮排 4 space (不要⽤用tab)
<img> 不要給 width, height
CSS 要⽤用 selector 縮⼩小範圍
路徑⽤用相對路徑,不要⽤用絕對路徑
Code Review
網址 http://review.xxx.com
commit message 要⽤用英⽂文 (因為 Gerrit 不⽀支援中⽂文)。︒
每個 patch 要保持簡短利落,commit message 要包含 JIRA
id(如果有的話),commit message 若需要⽤用比較⼤大的篇幅敘
述,則在 JIRA 補充。︒
只要完成⼀一⼩小部分功能,即可當作⼀一個 patch 上傳,可以讓未
來的 debug 變簡單,⽽而不要實作⼀一堆功能後再⼀一次上傳。︒
Gerrit 設定
先在 Windows 裝 git
http://blog.crboy.net/2012/05/git-on-windows.html
要先 signup
設定 SSH Public Keys
設定 Username
SSH Public key 設定(僅供參考)
開啓 Git Bash
ssh-keygen
預設都按 enter
把 C:Users你的⼤大名.sshid_rsa 的內容複製到 Gerrit 網⾴頁
上的 SSH Public key
或可參考 https://help.github.com/articles/generating-ssh-
keys#platform-windows
Gerrit Q & A
遇到 Permission denied (publickey). 這類的問題,請確認
~/.gitconfig 和 ~/.ssh/config 是否都已設定 User name 和
email:
第⼀一次抓 code
repo init -u ssh://在網⾴頁上設定的Username@xxx.com:29418/
ih/manifests.git
repo sync
開始新的⼀一個 branch
repo start 其實是開⼀一個新的 branch
查看⽬目前狀況
確定要 commit 的檔案可⽤用 git add
綠⾊色代表 git commit 會被 commit 的檔案,紅⾊色代表還沒準備
要 commit (⽤用 git commit -a 則可不管紅綠都會⼀一起 commit)
上傳前記得先 git diff
有紅⾊色的地⽅方代表是 tab,要把它改成 space
上傳到 gerrit
code review 時可順便找 tab
Code-review 分數的意義
+2 這個 patch 沒問題,驗證過,可以直接 submit。︒
+1 這個 patch 沒問題,驗證過,但需要其他⼈人幫忙驗證。︒
+0 留⾔言專⽤用。︒
-1 這個 patch 有問題,(不論是否驗證過,可能只是單純
coding style 的問題),請在留⾔言詳述。︒
-2 這個 patch 有問題,⽽而且可能連驗證都無法通過,(例如功能
有錯誤,或是沒有 rebase 等等),此時除非留下 -2 的 reviewer
再重新評分,否則此 patch 無法被 submit。︒
⽤用 --amend 來修改 patch
在還沒有被 merge 前,同⼀一個 patch 都可⽤用 --amend 來修改
--amend 會出現上次的 log
此時可以修改 commit message,不修改則代表沿⽤用上次寫的
message
再度上傳到 Gerrit
刪除檔案的⽅方式
merge 之後⋯⋯
可以⽤用 repo sync 來抓 server 上所有最新的 code
DOREMI

Mais conteúdo relacionado

Mais procurados

「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)NGINX, Inc.
 
Git基礎介紹
Git基礎介紹Git基礎介紹
Git基礎介紹Max Ma
 
Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!Ray Jenkins
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux NetworkingPLUMgrid
 
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!PHP 8 と V8 (JavaScript) で速さを見比べてみよう!
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!shinjiigarashi
 
NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)NGINX, Inc.
 
오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습BJ Jang
 
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps OnlineGKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps OnlineGoogle Cloud Platform - Japan
 
WindowsのCP932に苦闘している件
WindowsのCP932に苦闘している件WindowsのCP932に苦闘している件
WindowsのCP932に苦闘している件Hidetoshi Hirokawa
 
이클립스로 GIT 사용하기
이클립스로 GIT 사용하기이클립스로 GIT 사용하기
이클립스로 GIT 사용하기우영 주
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)VirtualTech Japan Inc.
 

Mais procurados (20)

Git real slides
Git real slidesGit real slides
Git real slides
 
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
 
Jenkins 再入門
Jenkins 再入門Jenkins 再入門
Jenkins 再入門
 
Git基礎介紹
Git基礎介紹Git基礎介紹
Git基礎介紹
 
Git in 10 minutes
Git in 10 minutesGit in 10 minutes
Git in 10 minutes
 
レシピの作り方入門
レシピの作り方入門レシピの作り方入門
レシピの作り方入門
 
Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!Understanding eBPF in a Hurry!
Understanding eBPF in a Hurry!
 
Git
GitGit
Git
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux Networking
 
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!PHP 8 と V8 (JavaScript) で速さを見比べてみよう!
PHP 8 と V8 (JavaScript) で速さを見比べてみよう!
 
いつやるの?Git入門
いつやるの?Git入門いつやるの?Git入門
いつやるの?Git入門
 
イエラエセキュリティMeet up 20210820
イエラエセキュリティMeet up 20210820イエラエセキュリティMeet up 20210820
イエラエセキュリティMeet up 20210820
 
NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)NGINX Back to Basics Part 3: Security (Japanese Version)
NGINX Back to Basics Part 3: Security (Japanese Version)
 
오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습
 
Git
GitGit
Git
 
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps OnlineGKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
 
WindowsのCP932に苦闘している件
WindowsのCP932に苦闘している件WindowsのCP932に苦闘している件
WindowsのCP932に苦闘している件
 
Git 版本控制 (使用教學)
Git 版本控制 (使用教學)Git 版本控制 (使用教學)
Git 版本控制 (使用教學)
 
이클립스로 GIT 사용하기
이클립스로 GIT 사용하기이클립스로 GIT 사용하기
이클립스로 GIT 사용하기
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
 

Semelhante a git, repo, Gerrit 基礎教學

Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshellNelson Tai
 
Git and git hub
Git and git hubGit and git hub
Git and git hub唯 李
 
Git 入门实战
Git 入门实战Git 入门实战
Git 入门实战icy leaf
 
Git原理与实战 201607
Git原理与实战 201607Git原理与实战 201607
Git原理与实战 201607Charles Tang
 
版本控制 使用Git & git hub
版本控制   使用Git & git hub版本控制   使用Git & git hub
版本控制 使用Git & git hub維佋 唐
 
Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹PingLun Liao
 
用 Drone 打造 輕量級容器持續交付平台
用 Drone 打造輕量級容器持續交付平台用 Drone 打造輕量級容器持續交付平台
用 Drone 打造 輕量級容器持續交付平台Bo-Yi Wu
 
容器與 Gitlab CI 應用
容器與 Gitlab CI 應用容器與 Gitlab CI 應用
容器與 Gitlab CI 應用Philip Zheng
 
前端開發學習簡介
前端開發學習簡介前端開發學習簡介
前端開發學習簡介peterju
 
連哈秋都懂的Git教學
連哈秋都懂的Git教學連哈秋都懂的Git教學
連哈秋都懂的Git教學hydai
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用luolonghao
 
腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3areyouok
 
腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3topgeek
 
Elixir 好用的編輯器
Elixir 好用的編輯器Elixir 好用的編輯器
Elixir 好用的編輯器bobo52310
 
KISSY Editor Design 2
KISSY Editor Design 2KISSY Editor Design 2
KISSY Editor Design 2yiming he
 
GIT實務操作與理論
GIT實務操作與理論GIT實務操作與理論
GIT實務操作與理論鵬 大
 
Git &amp; git hub v1.2
Git &amp; git hub v1.2Git &amp; git hub v1.2
Git &amp; git hub v1.2Chris Chen
 
Git flow 與團隊合作
Git flow 與團隊合作Git flow 與團隊合作
Git flow 與團隊合作Bo-Yi Wu
 

Semelhante a git, repo, Gerrit 基礎教學 (20)

Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshell
 
Git and git hub
Git and git hubGit and git hub
Git and git hub
 
Git
GitGit
Git
 
Git 入门实战
Git 入门实战Git 入门实战
Git 入门实战
 
Git原理与实战 201607
Git原理与实战 201607Git原理与实战 201607
Git原理与实战 201607
 
版本控制 使用Git & git hub
版本控制   使用Git & git hub版本控制   使用Git & git hub
版本控制 使用Git & git hub
 
Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹
 
用 Drone 打造 輕量級容器持續交付平台
用 Drone 打造輕量級容器持續交付平台用 Drone 打造輕量級容器持續交付平台
用 Drone 打造 輕量級容器持續交付平台
 
容器與 Gitlab CI 應用
容器與 Gitlab CI 應用容器與 Gitlab CI 應用
容器與 Gitlab CI 應用
 
前端開發學習簡介
前端開發學習簡介前端開發學習簡介
前端開發學習簡介
 
Git 实战
Git 实战Git 实战
Git 实战
 
連哈秋都懂的Git教學
連哈秋都懂的Git教學連哈秋都懂的Git教學
連哈秋都懂的Git教學
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用
 
腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3
 
腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3腾讯大讲堂46 自由cgi之路v3
腾讯大讲堂46 自由cgi之路v3
 
Elixir 好用的編輯器
Elixir 好用的編輯器Elixir 好用的編輯器
Elixir 好用的編輯器
 
KISSY Editor Design 2
KISSY Editor Design 2KISSY Editor Design 2
KISSY Editor Design 2
 
GIT實務操作與理論
GIT實務操作與理論GIT實務操作與理論
GIT實務操作與理論
 
Git &amp; git hub v1.2
Git &amp; git hub v1.2Git &amp; git hub v1.2
Git &amp; git hub v1.2
 
Git flow 與團隊合作
Git flow 與團隊合作Git flow 與團隊合作
Git flow 與團隊合作
 

git, repo, Gerrit 基礎教學