SlideShare ist ein Scribd-Unternehmen logo
TYPO3 Code Review

Ärgerlich. Da gibt es einen Bug
Was nun?
Projekt steht ...
TYPO3 Code Review Process
TYPO3 Code Review


Bugtracker: forge.typo3.org



Nichts gefunden? „New Issue“



Bug existiert: Nächstes Slide
„New Issue“

Genaue Beschreibung, Reproduzierbarkeit,
TYPO3/PHP Version, Kategorie, Screenshots
TYPO3 Code Review
Bei vielen Bugs gibt es schon fertige Patches


Bug wird gemeldet



Patch wird auf Review-Server geschickt



Verschiedene Personen machen ein Review



Patch +2/+2: Wird gemerged und landet in
„Upstream“. Fertig.
TYPO3 Code Review
Problem: Für noch mehr viele Patches gibt es
keine Reviews :(


Bug ist also schon im Bugtracker eingetragen



Link auf Review Server (gerrit) folgen



Lokalen TYPO3 source patchen



Keinen lokalen Source? GIT
TYPO3 Code Review


TYPO3 master aus GIT beziehen:
cd /home/kraftb/src/
git clone git://git.typo3.org/Packages/TYPO3.CMS.git



GIT Cheatsheet:

http://www.ndpsoftware.com/git-cheatsheet.html


Buch „Pro Git“:
http://git-scm.com/book
TYPO3 Code Review Process
TYPO3 Code Review


Patch von gerrit auf lokalen Souce anwenden:
cd TYPO3.CMS
git fetch git://git.typo3.org/Packages/TYPO3.CMS
refs/changes/39/25839/2 && git cherry-pick FETCH_HEAD
TYPO3 Code Review Process
TYPO3 Code Review
Testen


Funktioniert alles wie gewohnt



Ist der Fehler behoben



Gibt es sonstige Probleme



So gut als möglich testen z.B. während der
Entwicklung einer Site, evtl. sogar im Live
Betrieb
TYPO3 Code Review
Code Review





Gibt es offensichtliche Fehler im Code
Ist der Code gut dokumentiert und
verständlich
Entspricht er den Coding Guidelines?

http://docs.typo3.org/TYPO3/CodingGuidelinesReference/
TYPO3 Code Review
Review abgeben


Für login auf review.typo3.org ist typo3.org
Account notwendig



Button „Add comment“ ganz am Ende



Beschreiben was und wie getestet wurde



Probleme?





Verified: +1 ... Problem behoben und alles
funktioniert nach wie vor wie erwartet
Code Review. +1 ... Code ist lesbar und
scheint kein offensichtliches Problem zu
(c) 2013 kraft@webconsulting.at

Weitere ähnliche Inhalte

Ähnlich wie TYPO3 Code Review Process

Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI
Florian Bosselmann
 
TYPO3 Certified Integrator - Teste dein Wissen
TYPO3 Certified Integrator - Teste dein WissenTYPO3 Certified Integrator - Teste dein Wissen
TYPO3 Certified Integrator - Teste dein Wissen
Alex Kellner
 
Ionic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenIonic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf Steroiden
Hendrik Lösch
 
TYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoringTYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoring
Peter Kraume
 
Childthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGNChildthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGN
pixolin
 
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbHEntwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
stijink
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & Domino
Ulrich Krause
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for Beginners
Ulrich Krause
 
Deployment
DeploymentDeployment
Deployment
Christian Händel
 
TYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & ComposerTYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & Composer
Axel Böswetter
 
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreHands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Gregor Biswanger
 
TYPO3 GitLab CI
TYPO3 GitLab CITYPO3 GitLab CI
TYPO3 GitLab CI
Sebastian Michaelsen
 
Open Source Software Made by ImmobilienScout24 Freigabeprozess
Open Source Software Made by ImmobilienScout24 FreigabeprozessOpen Source Software Made by ImmobilienScout24 Freigabeprozess
Open Source Software Made by ImmobilienScout24 Freigabeprozess
Schlomo Schapiro
 
WWruhr2018
WWruhr2018WWruhr2018
WWruhr2018
Nico Brünjes
 
Versionskontrolle mit Apache Subversion
Versionskontrolle mit Apache SubversionVersionskontrolle mit Apache Subversion
Versionskontrolle mit Apache Subversion
Mathias Magdowski
 
Schlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
Schlangenhochzeit in-der Wolke - Pyramid auf Google AppengineSchlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
Schlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
Jens Klein
 
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-CommunityGit & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
Steffen Gebert
 
Composer und TYPO3
Composer und TYPO3Composer und TYPO3
Composer und TYPO3
Peter Kraume
 
German: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit JavascriptGerman: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit Javascript
Ralf Schwoebel
 
Smartphone Betriebssysteme Android
Smartphone Betriebssysteme AndroidSmartphone Betriebssysteme Android
Smartphone Betriebssysteme Android
dm-development
 

Ähnlich wie TYPO3 Code Review Process (20)

Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI
 
TYPO3 Certified Integrator - Teste dein Wissen
TYPO3 Certified Integrator - Teste dein WissenTYPO3 Certified Integrator - Teste dein Wissen
TYPO3 Certified Integrator - Teste dein Wissen
 
Ionic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenIonic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf Steroiden
 
TYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoringTYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoring
 
Childthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGNChildthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGN
 
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbHEntwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
Entwicklungsprozess und Arbeit mit Symfony2 in der fotocommunity GmbH
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & Domino
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for Beginners
 
Deployment
DeploymentDeployment
Deployment
 
TYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & ComposerTYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & Composer
 
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreHands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
 
TYPO3 GitLab CI
TYPO3 GitLab CITYPO3 GitLab CI
TYPO3 GitLab CI
 
Open Source Software Made by ImmobilienScout24 Freigabeprozess
Open Source Software Made by ImmobilienScout24 FreigabeprozessOpen Source Software Made by ImmobilienScout24 Freigabeprozess
Open Source Software Made by ImmobilienScout24 Freigabeprozess
 
WWruhr2018
WWruhr2018WWruhr2018
WWruhr2018
 
Versionskontrolle mit Apache Subversion
Versionskontrolle mit Apache SubversionVersionskontrolle mit Apache Subversion
Versionskontrolle mit Apache Subversion
 
Schlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
Schlangenhochzeit in-der Wolke - Pyramid auf Google AppengineSchlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
Schlangenhochzeit in-der Wolke - Pyramid auf Google Appengine
 
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-CommunityGit & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
Git & Gerrit: Verteilte Softwareentwicklung und -reviews in der TYPO3-Community
 
Composer und TYPO3
Composer und TYPO3Composer und TYPO3
Composer und TYPO3
 
German: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit JavascriptGerman: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit Javascript
 
Smartphone Betriebssysteme Android
Smartphone Betriebssysteme AndroidSmartphone Betriebssysteme Android
Smartphone Betriebssysteme Android
 

TYPO3 Code Review Process

  • 1. TYPO3 Code Review Ärgerlich. Da gibt es einen Bug Was nun? Projekt steht ...
  • 3. TYPO3 Code Review  Bugtracker: forge.typo3.org  Nichts gefunden? „New Issue“  Bug existiert: Nächstes Slide „New Issue“ Genaue Beschreibung, Reproduzierbarkeit, TYPO3/PHP Version, Kategorie, Screenshots
  • 4. TYPO3 Code Review Bei vielen Bugs gibt es schon fertige Patches  Bug wird gemeldet  Patch wird auf Review-Server geschickt  Verschiedene Personen machen ein Review  Patch +2/+2: Wird gemerged und landet in „Upstream“. Fertig.
  • 5. TYPO3 Code Review Problem: Für noch mehr viele Patches gibt es keine Reviews :(  Bug ist also schon im Bugtracker eingetragen  Link auf Review Server (gerrit) folgen  Lokalen TYPO3 source patchen  Keinen lokalen Source? GIT
  • 6. TYPO3 Code Review  TYPO3 master aus GIT beziehen: cd /home/kraftb/src/ git clone git://git.typo3.org/Packages/TYPO3.CMS.git  GIT Cheatsheet: http://www.ndpsoftware.com/git-cheatsheet.html  Buch „Pro Git“: http://git-scm.com/book
  • 8. TYPO3 Code Review  Patch von gerrit auf lokalen Souce anwenden: cd TYPO3.CMS git fetch git://git.typo3.org/Packages/TYPO3.CMS refs/changes/39/25839/2 && git cherry-pick FETCH_HEAD
  • 10. TYPO3 Code Review Testen  Funktioniert alles wie gewohnt  Ist der Fehler behoben  Gibt es sonstige Probleme  So gut als möglich testen z.B. während der Entwicklung einer Site, evtl. sogar im Live Betrieb
  • 11. TYPO3 Code Review Code Review    Gibt es offensichtliche Fehler im Code Ist der Code gut dokumentiert und verständlich Entspricht er den Coding Guidelines? http://docs.typo3.org/TYPO3/CodingGuidelinesReference/
  • 12. TYPO3 Code Review Review abgeben  Für login auf review.typo3.org ist typo3.org Account notwendig  Button „Add comment“ ganz am Ende  Beschreiben was und wie getestet wurde  Probleme?   Verified: +1 ... Problem behoben und alles funktioniert nach wie vor wie erwartet Code Review. +1 ... Code ist lesbar und scheint kein offensichtliches Problem zu