4. Arjan Snaterse, WP Meetup 26-02-2015
Ik wil jullie overtuigen
• Dat je code in versiebeheer moet
• Dat werken in verschillende branches verrekte
handig is
• Dat verschillende omgevingen (test, acceptatie,
etc) noodzakelijk zijn
• Dat capistrano cool is
10. Arjan Snaterse, WP Meetup 26-02-2015
Waarom versiebeheer?
• Historie van veranderingen
• Fouten herstellen
• Teamwork
• Werken aan verschillende features
11. Arjan Snaterse, WP Meetup 26-02-2015
Commits, Branches en Mergen
• Een commit is set met wijzigingen in de code
• Een branch bestaat uit een set van commits
• Branches merge je naar master
12. Arjan Snaterse, WP Meetup 26-02-2015
Handige opzet
• Master branch
• Release branch
• Hotfixes
• Voor ieder issue een aparte branch, gemerged
naar feature branch
16. Arjan Snaterse, WP Meetup 26-02-2015
Deployment oplossingen
• Web based oplossingen
• Github webhooks
• Capistrano
• .....
17. Arjan Snaterse, WP Meetup 26-02-2015
Web based oplossingen
• deployhq.com
• codeship.com
• en vele andere...
18. Arjan Snaterse, WP Meetup 26-02-2015
Github Webhooks
De basis
Een iets geavanceerdere setup:
https://github.com/markomarkovic/simple-php-git-deploy/
19. Arjan Snaterse, WP Meetup 26-02-2015
Meet capistrano
• Deploy vanaf lokaal naar remote met één
commando
• Deploy naar verschillende omgevingen
• Deploy specifieke branches
22. Arjan Snaterse, WP Meetup 26-02-2015
• bundle exec cap production deploy
• bundle exec cap staging deploy
• bundle exec cap test
branch="<branchname>" deploy
Capistrano voorbeelden
23. Arjan Snaterse, WP Meetup 26-02-2015
Ja maar, JA maar...
• Te hoog gegrepen?
• Start in ieder geval met Github en zoek een
bestaande deploy dienst
24. Arjan Snaterse, WP Meetup 26-02-2015
Voor de liefhebbers
• Deployment op basis van uitkomst unit tests
• Losse omgevingen per branch/issue
• Database deployment