Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Git & Gerrit
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
dgkim84
July 18, 2012
Technology
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Git & Gerrit
Git & Gerrit
dgkim84
July 18, 2012
More Decks by dgkim84
See All by dgkim84
Logical clocks
dgkim84
1
63
HCatalog & Templeton
dgkim84
2
390
Other Decks in Technology
See All in Technology
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
160
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
6k
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
170
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
170
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
150
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
770
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
870
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
150
Getting Started with Google Antigravity
glaforge
0
300
JAWS-UGグッズ職人仕事の流儀
kentapapa
0
100
Browser Spec: Testing Hotwire with Ruby
takahashim
1
120
Optunaの最新リリースv5.0について
pfn
PRO
0
120
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
Abbi's Birthday
coloredviolet
4
10k
Site-Speed That Sticks
csswizardry
13
1.6k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
940
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
My Coaching Mixtape
mlcsv
0
360
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
320
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
370
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Transcript
Gerrit Daegeun Kim (
[email protected]
) 1 5IVSTEBZ 0DUPCFS
Gerrit • A Code Review System based on JGit •
Open source (Apache 2 License) 2 5IVSTEBZ 0DUPCFS
Review 3 Pre-commit Review 0 25 50 75 100 ѐߊ
٣ߡӒ 5IVSTEBZ 0DUPCFS
Review 4 Pre-commit Review 0 25 50 75 100 ѐߊ
٣ߡӒ 5IVSTEBZ 0DUPCFS
Review 5 Pre-commit Review 0 25 50 75 100 ѐߊ
٣ߡӒ 5IVSTEBZ 0DUPCFS
Review 6 Pre-commit Review 0 25 50 75 100 ѐߊ
٣ߡӒ 5IVSTEBZ 0DUPCFS
Git standalone commit Local Repo Working Tree Remote Repo pull/push
7 5IVSTEBZ 0DUPCFS
Git and Gerrit commit Local Repo Working Tree merge Remote
Repo Gerrit pull/fetch push for review 8 5IVSTEBZ 0DUPCFS
Git, Gerrit and CI Local Repo commit Working Tree merge
Remote Repo Gerrit pull/fetch push for review fetch verify 9 5IVSTEBZ 0DUPCFS
Request for Review Local Repo merge Remote Repo Gerrit pull/fetch
push for review • Implementing a new feature • Committing them to the repo • Uploading changes to Gerrit 10 5IVSTEBZ 0DUPCFS
Uploading changes (Simple) 11 $ git init $ git clone
ssh://[user]@hostname:port/[project] ... $ git push origin HEAD:refs/for/master ... 5IVSTEBZ 0DUPCFS
Uploading changes (Advanced) 12 $ git push [alias] HEAD:refs/for/[branch] $
git push \ ssh://[user]@hostname:port/[project] \ HEAD:refs/for/[branch] $ git push [alias] HEAD~1:refs/for/[branch] $ git push [alias] [MD5]:refs/for/[branch] or $ git config remote.[alias].push refs/head/*:refs/for/* $ git push [alias] 5IVSTEBZ 0DUPCFS
Adding Reviewers 13 Add Reviewer 5IVSTEBZ 0DUPCFS
Uploading/Adding Reviewers (Advanced) 14 $ git push [alias] --receive-pack=‘git receive-pack
\ --reviewer [email 1] --reviewer [email 2] \ --cc [email 3] --cc [email 4]‘ \ HEAD:refs/for/[branch] or $ git config remote.[alias].receivepack \ ‘git receive-pack --reviewer [email 1] \ --cc [email 2]’ $ git push [alias] HEAD:refs/for/[branch] 5IVSTEBZ 0DUPCFS
Review and Verify merge Remote Repo Gerrit Reviewers a.2 review
a.1 fetch b.1 fetch b.2 verify 15 5IVSTEBZ 0DUPCFS
Review merge Remote Repo Gerrit Reviewers a.2 review a.1 fetch
16 • Fetching the changes • Code review! 5IVSTEBZ 0DUPCFS
Fetching the changes 17 copy 5IVSTEBZ 0DUPCFS
Fetching the changes 18 $ git fetch http://hostname:port/p/[project] \ refs/changes/[last
two numbers of change id]/ [change id]/[patch id] $ git checkout FETCH_HEAD $ git show HEAD ex) $ git fetch http://reviews.geekple.com/p/memcached \ refs/changes/40/40/2 5IVSTEBZ 0DUPCFS
Review (Advanced) 19 $ ssh -p [port] [user]@[hostname] gerrit review
\ --code-review=+1 \ --project=[project] \ [commit or change,patch] 5IVSTEBZ 0DUPCFS
Verify merge Remote Repo Gerrit b.1 fetch b.2 verify 20
• -1 when the build fails. • +1 when it passes. 5IVSTEBZ 0DUPCFS
Verify (Advanced) 21 $ ssh -p [port] [user]@[hostname] gerrit review
\ --verified=+1 \ --project=[project] \ [commit or change,patch] 5IVSTEBZ 0DUPCFS
Q & A 22 5IVSTEBZ 0DUPCFS