Ventajas
Feedback en tiempo real de mi código
Me entrena a detectar errores mejor
Tanto quien escribió como quien revisó
el código aprenden cosas nuevas (siempre)
El software sale con menos bugs (siempre)
No importa que tan verdugo tu seas
Como lo hacemos nosotros
Paso 1
Luego de asignado un user story / feature / ticket
Procedo a crear un branch nuevo.
Sin excepciones.
git checkout -b feature-NombreDelFeature
Paso 2
Una ver terminado el trabajo hacemos un push
al repositorio central y solicitamos un pull request
git push -u origin feature-NombreDelFeature
Paso 3.
Pídele a un compañero que revise tu código
Paso 4.
Si debes hacer refactoring porque encontraron errores, entonces sometes el pull request nuevamente luego de corregirlos.
Si todo está bien se hace un merge al branch de desarrollo.
Paso 4a
(opcional)
Si había una suite de tests, todos los tests deben pasar antes
de que se haga el merge al branch de desarrollo