12
Code Review Gerittel Huba Zsolt [email protected]

Code Review Gerrittel

Embed Size (px)

Citation preview

Page 1: Code Review Gerrittel

Code Review Gerittel

Huba [email protected]

Page 2: Code Review Gerrittel

Gerrit

● GWT webalkalmazás● Gatekeeper, git szerver is egyben● Integrálódik CI szerverrel● Eclipse támogatás

● Git plugin● Mylyn

Page 3: Code Review Gerrittel

Miért volt szükségünk rá?

● Subversion műveletek távoli szerverre lassúak● Revertet leszámítva minden más művelettel a

szerverhez fordul● Subversion branchelés nehézkes● Igény az elosztott verziókezelők

funkcionalitására● Igény code review eszközre● Kiadott release csak ellenőrzött kódot

tartalmazzon

Page 4: Code Review Gerrittel

Projekt git configja

Page 5: Code Review Gerrittel

Change ID

● Review egyedi azonosítója● Commit hook generálja● Git log utolsó sorában jelenik meg

Page 6: Code Review Gerrittel

Fejlesztés menete

● Lokális feature branch (1 feature / branch)● Nincs merge, csak rebase a masterre →

tisztább history● git push

● Egy commit/beküldött change (1 Change ID)● Beküldés előtt szükség szerint:

– git rebase ­i ­> squash● Érdemes elkerülni az egymásra épülő change-

eket● Újranyitott review esetén git commit ­­amend

Page 7: Code Review Gerrittel

Gépi review (CI)

● Hudson / Jenkins végzi● git push után automatikusan indul

● Gerrit Trigger● Értékei:

● +1 Verified● 0 No score● -1 Fails

Page 8: Code Review Gerrittel

Nyitott review-k

Page 9: Code Review Gerrittel

Kézi review

● Beküldő reviewert rendel a beküldött change-hez

● Csak akkor van értelme átnézni a change-et, ha átment a gépi review-n

● Code Review ● webes felület vagy

Eclipse● Reviever megjegyzéseket

fűz a kódhoz

Page 10: Code Review Gerrittel

Diff nézet

Page 11: Code Review Gerrittel

Kézi review kimenete● Change pontozása● (Reviewer visszadobja

a change-et)● Újabb beküldés

tetszőleges számú alkalommal

● Reviewer elfogadhatja change-et

● Sikeres review után merge a master ágba● Többi fejlesztő számára

ilyenkor lesz elérhető

Page 12: Code Review Gerrittel

Kérdések / Válaszok