SlideShare a Scribd company logo
Code Reviews
Daniel Kummer.
Senior Software Engineer.
Namics AG, St. Gallen
Why?
Improve	 code quality and
transparency	
Provide 	 a discussions platform
	
Foster 	 continuous
self-improvement
Reduce	 bug fixing / new feature
implementation time
	
Because we’d like to…
Time
Delta
Implementation
Bugfixing
Implementation
Bugfixing
Code
Reviews
Classic
Project Flows Compared
1.0
Progress over time of implementation,
changes and bug fixing phases in projects.
Start
Changes
Changes
1.1
Time
With?
Git-Flow
Workflow
+
Merge
Requests
+
=
Code
reviews
How?
Vader	
Yoda	
an example…	
&
develop
feature-123
Vader starts a
new feature
git checkout -b feature-123 develop
Work on the feature branch and commit regularly
git push -u origin feature-123
origin
Periodically push feature
branch and commits to the
central repository
This is a backup and allows
collaboration
Subsequent pushes can be
done with git push only
Vader completes
his feature
Make sure the central repository
has the most recent commits
Start the code review by creating a merge request
git push
Select the feature as the source branch
Set the target branch to “develop” – we always merge
into develop after review
Check the target branch and choose an assignee.
Write a short description for the merge request.
Include links to all
relevant Jira tickets
Use /cc to add more
participants
Yoda receives the
merge request
All code changes are visible from the merge
request page
Locally checkout the feature branch
git checkout -b test origin/feature-123
You can also make your own changes which
will show up in the merge request.
How Yoda reviews
1.  Run the project locally on an end device
2.  Look for stack traces in log output
3.  Test the implemented functionality and verify
styles
4.  Review and discuss the code for:
- Potential bugs
- Clean and concise implementation
- Quality improvements
Discuss the feature
implementation in the
discussion section, vote
it up if you think it’s ok
Directly comment on
source code lines in the
changes section
The discussions
A
suggestion
I have
Good
point…
I’ve done
this before
and know
a nice
solution
Discuss the best solution
Make recommendations
Multiple people can review
an item
Change the roles frequently
Don’t blame – improve!
develop
feature-123
All is done - Yoda
accepts the request
The feature branch is merged
into develop and removed
After the discussed changes have been made
by Vader or Yoda and the feature is complete,
accept the merge request and remove the
source branch!
git checkout develop
git pull
If the automatic merge doesn’t work because
of merge conflicts, merge manually
git merge --no-ff feature-123
git push origin develop
1. Update the target branch (develop)
2. Merge the branch and push the changes
3. Remove the feature branch in gitlab
Q + A

More Related Content

PPTX
Branching and Merging Practices
PPSX
SCM Process and smartBuild
PDF
A simplified Gitflow
PDF
Devops and the New Culture
PPT
Iterative software development
PPTX
ContinuousIntegration
PDF
Continuous delivery from the trenches
PDF
Testing 1, 2, 3, ...
Branching and Merging Practices
SCM Process and smartBuild
A simplified Gitflow
Devops and the New Culture
Iterative software development
ContinuousIntegration
Continuous delivery from the trenches
Testing 1, 2, 3, ...

What's hot (20)

PPT
Test automation in agile ecosystem
PPTX
Testing
PDF
NIWeek 2017 - Automated Test of LabVIEW FPGA Code: CI and Jenkins 2 Pipelines
PDF
Branching and Merging and Bears, Oh My!
PPTX
How do you implement Continuous Delivery? Part 3: All about Pipelines
PPTX
Testing
PDF
Launch safely with Feature Flags
PPTX
Xp conf-tbd
PPTX
The lifecycle of an agile sprint
PPTX
What's new in Visual Studio 2013 & TFS 2013
PPTX
Iterative model
PPTX
Iteria lowcode 2022-01-10
PDF
Essentialize Extreme Programming practices
PDF
DIG1108C Lesson 7 Fall 2014
PPT
Automation testing IBM RFT - Rational Functional Tester
PPTX
Software Versioning by mohammad al banna
PPTX
An Introduction to Iterative Software Development
PDF
99translations For Developers
PDF
CoDe:U git flow
PPT
Team Foundation Server Demo
Test automation in agile ecosystem
Testing
NIWeek 2017 - Automated Test of LabVIEW FPGA Code: CI and Jenkins 2 Pipelines
Branching and Merging and Bears, Oh My!
How do you implement Continuous Delivery? Part 3: All about Pipelines
Testing
Launch safely with Feature Flags
Xp conf-tbd
The lifecycle of an agile sprint
What's new in Visual Studio 2013 & TFS 2013
Iterative model
Iteria lowcode 2022-01-10
Essentialize Extreme Programming practices
DIG1108C Lesson 7 Fall 2014
Automation testing IBM RFT - Rational Functional Tester
Software Versioning by mohammad al banna
An Introduction to Iterative Software Development
99translations For Developers
CoDe:U git flow
Team Foundation Server Demo
Ad

Similar to Git code reviews (20)

PDF
Getting Git Right
PDF
Git & Code review
PDF
Git best practices 2016
PDF
Developing with versioning and CI/CD
PPTX
Ultimate Git Workflow - Seoul 2015
PDF
Be a Happier Developer with Git / Productive Team #gettinggitright
PDF
Git 101: Force-sensitive to Jedi padawan
PPTX
Git & GitLab
PDF
Git cheat sheet_dark
PDF
Git cheat sheet__white
PDF
Git cheat sheet__grey
PDF
Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14
PDF
FUG Agile software engineering practices
PDF
Dev with github enterprise
PDF
Surviving Code Reviews
PPTX
Session git
PPTX
E caregitpresentation
PPTX
Git for work groups ironhack talk
PPTX
Git branching policy and review comment's prefix
PDF
Git essentials
Getting Git Right
Git & Code review
Git best practices 2016
Developing with versioning and CI/CD
Ultimate Git Workflow - Seoul 2015
Be a Happier Developer with Git / Productive Team #gettinggitright
Git 101: Force-sensitive to Jedi padawan
Git & GitLab
Git cheat sheet_dark
Git cheat sheet__white
Git cheat sheet__grey
Code Review with Git and Gerrit - Devoxx 2011 - Tools in Action - 2011-11-14
FUG Agile software engineering practices
Dev with github enterprise
Surviving Code Reviews
Session git
E caregitpresentation
Git for work groups ironhack talk
Git branching policy and review comment's prefix
Git essentials
Ad

More from Daniel Kummer (12)

PDF
DIY IoT - The InfoDome
PDF
Bluetooth LE - Dodging the Bullets
PDF
PDF
Changing internet - where we come from where we go
PDF
Git - Get Ready To Use It
PDF
Magnolia 4.5 Migration - Storytelling
PDF
Code Kata Workshop - Improve your skills through deliberate practice
PDF
Clean Code
PPTX
BDD testing with cucumber
PDF
Git get-the-job-done
PDF
Git! Why? How?
DIY IoT - The InfoDome
Bluetooth LE - Dodging the Bullets
Changing internet - where we come from where we go
Git - Get Ready To Use It
Magnolia 4.5 Migration - Storytelling
Code Kata Workshop - Improve your skills through deliberate practice
Clean Code
BDD testing with cucumber
Git get-the-job-done
Git! Why? How?

Recently uploaded (20)

PDF
cuic standard and advanced reporting.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
MYSQL Presentation for SQL database connectivity
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Encapsulation theory and applications.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
cuic standard and advanced reporting.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
MYSQL Presentation for SQL database connectivity
“AI and Expert System Decision Support & Business Intelligence Systems”
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Encapsulation theory and applications.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Advanced methodologies resolving dimensionality complications for autism neur...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Digital-Transformation-Roadmap-for-Companies.pptx
Understanding_Digital_Forensics_Presentation.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
Reach Out and Touch Someone: Haptics and Empathic Computing
NewMind AI Weekly Chronicles - August'25 Week I
Dropbox Q2 2025 Financial Results & Investor Presentation
Mobile App Security Testing_ A Comprehensive Guide.pdf
Network Security Unit 5.pdf for BCA BBA.

Git code reviews