SlideShare ist ein Scribd-Unternehmen logo
1 von 13
TYPO3 Code Review

Ärgerlich. Da gibt es einen Bug
Was nun?
Projekt steht ...
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


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
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 WissenAlex Kellner
 
Ionic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenIonic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenHendrik Lösch
 
TYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoringTYPO3 Monitoring mit t3monitoring
TYPO3 Monitoring mit t3monitoringPeter Kraume
 
Childthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGNChildthemes mit git – WordPress MeetUp CGN
Childthemes mit git – WordPress MeetUp CGNpixolin
 
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 GmbHstijink
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & DominoUlrich Krause
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for BeginnersUlrich Krause
 
TYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & ComposerTYPO3 Usergroup Dresden - TYPO3 & Composer
TYPO3 Usergroup Dresden - TYPO3 & ComposerAxel 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 CoreGregor Biswanger
 
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 FreigabeprozessSchlomo Schapiro
 
Versionskontrolle mit Apache Subversion
Versionskontrolle mit Apache SubversionVersionskontrolle mit Apache Subversion
Versionskontrolle mit Apache SubversionMathias 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 AppengineJens 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-CommunitySteffen Gebert
 
Composer und TYPO3
Composer und TYPO3Composer und TYPO3
Composer und TYPO3Peter 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 JavascriptRalf Schwoebel
 
Smartphone Betriebssysteme Android
Smartphone Betriebssysteme AndroidSmartphone Betriebssysteme Android
Smartphone Betriebssysteme Androiddm-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 ...
  • 2.
  • 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
  • 7.
  • 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
  • 9.
  • 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