Training/GIT

From 2value wiki 2
Revision as of 02:56, 10 April 2013 by 2value>Interwiki linking script
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


2Value heeft op de valreep van het nieuwe jaar 2011 besloten per direct een GIT training te organiseren, in samenwerking met GIT specialist Stefan Koopmanschap

Zie ook

  1. GIT
  2. Associate:GIT

Wat, voor wie, waarom, hoe

Wat behelst de training

GIT is een modern open source codemanagementsystem. Deze training leert je in praktijk (workshop) hoe je in teamverband in een OTAPomgeving code kunt delen met collega's. GIT heeft diverse voordelen boven SVN en CVS. Welke? Dat legt Linus Torvalds (Linux èn GIT founder) het best uit.

Voor wie

Voor 2Value associates of associates in spe met kennis van codemanagement en/of SVN

Waarom

2Value werkt decentraal en GIT past daar beter bij dan SVN.

Afwegingen die de doorslag hebben gegeven:

  1. Snel werken in decentraal team
  2. Kwaliteit

Hoe

2 sessie van 3 uur

Om de migratie mogelijk te maken hebben we een training van in totaal 2x3 uur ingelast met nog 2x2 uur voorbereidingstijd.

Technisch versus generalisten niveau

We maken een onderscheid in twee type associates:

  1. Groep T : Technisch zeer bekwaam
  2. Groep I : Integratoren, generalisten, technisch normale expertise

GIT migratie

2Value is voornemens om te migreren van SVN naar GIT voor haar OTAP omgevingen. Zie de inhoudsopgave voor hoe we dat doen.

Planning

  1. Training
    1. Voorbereiding
    2. Onderwerpen
    3. Workshop 1; op lokatie 2Value in Haarlem of Heemstede
    4. Voorbereiding
    5. Workshop 2; op lokatie 2Value in Haarlem of Heemstede
    6. Toets: kun je vanaf je eigen bedrijf uitvoeren.


Bedrijfsregels 2Value

We gebruiken Github.com

Redenen:

  1. Prijsplan beter passend bij onze architectuur
  2. GIThub: makkelijk repo's forken

Algemeen

  1. Content en temp/cache directories worden geignored

Per project / site

  1. centrale repository overwegen - 1 persoon is verantwoordelijk (leaddeveloper / derde lijns), hij kan pushen

We pullen van de centrale repo naar de persoonlijke cloudrepo (github.com), pullen naar persoonlijk lokaal en pushen zelf terug naar persoonlijke cloud repo.

  1. De derde lijns pullt de wijzigingen die geintegreerd moeten worden naar zijn lokale repo en pusht vervolgend naar de centrale repo voor

Uitgangspunten

Bas zegt: werkproces in stand houden

Databases

Code management en databases is een aparte uitdaging.

 Patch001, patch002, patch003 -> een systeem vinden om de nummering om te gooien
 
 Doctrine / Propell - ORMS (voor iedere tabel heb je class, ieder record is een instantie van die class)

Documentatie

Engels! De commitmessages in GIT zijn in pricinpe free form, regel: niet te gedetailleerd svp, wel duidelijk.

Onderwerpen

De leerdoelen:

  1. Persoonlijke GIT omgeving op kunnen zetten
  2. Github Saas omgeving controleren en gebruiken
  3. Commando's GIT voor SVN'ers, voor- en nadelen kunnen reproduceren
  4. Commando's GIT: GIT beheersen
  5. Speciale GIT commando's beheersen
  6. Kunnen samenwerking in een team met GIT
  7. OTAP omgeving kunnen runnen met GIT

Lesmateriaal

De presentatie is hier beschikbaar, de workshopopdrachten hier en de 2Value afspraken van werken met GIT staan hier.

Voorbereiding

Dan nog een opmerking voor diegene die de GIT workshop van Stefan Koopmanschap gaan volgen. Omdat er met github gewerkt zal worden, dient er een SSH key gegeneerd te worden. Je hoeft in principe alleen de key te generen, maar als je nog wat tijd over hebt, kan je natuurlijk ook vast een github account aanmaken en je key daaraan toevoegen. Meer informatie over het aanmaken van een SSH key voor github vind je hier:

Mac: http://help.github.com/mac-key-setup/
Windows: http://help.github.com/msysgit-key-setup/
Linux: http://help.github.com/linux-key-setup/


Studieboeken

Stefan: aanraders stuurt hij op:

  1. PROGIT.org -> SCOTT CHACON, > Je kunt op http://progit.org/book/ het hele boek lezen.
  2. Travis Swicegood -> zijn meest recente boek

Eigen computer

  1. De eigen computer moet voorzien zijn van een gemakkelijke texteditor
  2. Wireless connectie
  3. <nog iets, Bas?/Stefan?>

Github-omgeving

  1. IP nummers whitelisten, bij grote aantal cursisten

Train the trainers

    1. Henk en Bas moeten aan het werk: boeken, trainen (Henk: done sessie 1 bij Stefan), 2Value voorbereiding
    2. Welke real live site kunnen we met GIT aanpakken zodat trainers on the job gelouterd zijn? <bas>
    3. Hoe verdelen we de taken tijdens de groep T training.

Groepen

Groep T

gepland: eerste sessie eind dec 2010, 2de sessie eind feb 2011

Groep I

gepland: eerste sessie eind feb 2011, 2de sessie eind maart 2011

Ingangsniveaus

Per sessie verdeeld.

Sessie 1: Commando en structuur niveau

Groep T ingang: goede svn kennis

Exit niveau sessie 1

  1. Github.com omgeving doorgronden
  2. Commando kunnen gebruiken
  3. Op voorbeelddata over en weer kunnen pullen, pushen en committen tussen deelnemers

Sessie 2: Leaddev rol in 2Value codemanagement

Groep T ingang: goede GIT kennis, toets sessie 1 gehaald

Exit niveau sessie 2

  1. binnen 2Value met GIT versiebeheer kunnen doen op Drupal en Joomla sites.: Bas en Henk te beginnen met Koopman-works.nl
  2. afspraken over wie in the lead (waarvandaan gepulled wordt), elke persoon die dit niveau haalt is ergens bij een van de projecten in the lead.

Toets

Toets - welke onderdelen - hoe zorgen we dat deze op afstand kan worden gedaan - op beide exit niveau's

Toets 1

De toets vindt plaats op commando-niveau na sessie 1 Commando's: GIT voor SVN'ers, GIT specifiek, github.com omgeving leren inzetten

Toets 2

De toets vindt plaats op commando-niveau na sessie 1 2Value proces: routine in manier van werken en procedures

Werkverdeling voor de organisatie van de training GIT

    1. voorbereiding: wie doet wat
    2. training: wie doet wat
    3. toetsen afnemen door Bas Vredeling / Henk van Cann