Auto Merge Queue
Transcript of Auto Merge Queue
Besturing 3.0 – B@M
AMQAutomatic Merge Queue
Corstiaan Kamp
AMQ - Waarom
• 4 scrum teams die op hetzelfde tijdstip spullen naar master willen brengen
• Tijdsdruk/groepsdruk voor degene die op vrijdag de release gaat maken.
• Menselijke fouten waardoor master rood wordt• Tijd verlies
Besturing 3.0
AMQ - Doel
• Ontwikkel proces versnellen• Origin/Master altijd releasebaar houden• Verminderen menselijke fouten
Besturing 3.0
AMQ – Werkwijze pre AMQ
Besturing 3.0
AMQ – pre AMQ - regeltjes
Besturing 3.0
• Voor mergen eerst op de master rebasen. Voorbeeld: git rebase origin/master of git rebase origin/master _R3Hierdoor worden alle changes die op de master stonden onder de branch geschoven.
• Na rebasen een groene teampipe krijgen; daarvoor is het nodig om de changes op de origin van de branche te krijgen.Om de changes op de origin van de branch te krijgen, moet het volgende command worden uitgevoerd:PAS OP! Dit commando herschrijft de git-historie. Doe dit commano nooit op de master, maar alleen op een branch! Overleg bij twijfel met een integrator git push origin <BRANCHNAAM HIER> --forceCoordineer dit onderling, als nog meer mensen op de branch werken; zij zullen na deze actie moeten pullen
• Als de teampipe groen is, dan kan in principe de branch gemerged worden naar de master. Om het terugdraaien van merges te vereenvoudigen dient er ten alle tijden een “merge commit” te worden gemaakt. Doe dit als volgt: git checkout master git merge --no-ff <BRANCHNAAM HIER> Uit deze merge zouden geen conflicts mogen komen. Als dat toch gebeurt, is iemand er tussendoor gekomen met terugmergen naar de master, of heeft iemand direkt op de master gepusht.
• Push naar de master
AMQ - AMQ
Besturing 3.0
• Alleen via AMQ naar master• Master altijd groen• Geen lijstjes meer bijhouden wie mag mergen
AMQ – Jenkins
Besturing 3.0
AMQ – no silver bullet
Besturing 3.0
AMQ – happy developers
Besturing 3.0