What is version control and why should web developers use it? What is the difference between Subversion (SVN) and Git for example? And what are best practices to use Git in a modern web developers world.
14. Wat is Git?
Git is een distributed version control (dvcs) en
source code management (scm) systeem,
gericht op snelheid, data integriteit en niet-
lineaire workflows.
18. Maar...
● Alle gecommitte bestanden blijven altijd in
IEDERE clone!
● Git kent geen lege mappen
● Zonder genoeg basiskennis is kan het een
b*tch zijn
25. Master vs develop
Git heeft altijd tenminste 1 branche: master
Wij gebruiken altijd twee branches:
1. master → voor live-omgeving
2. develop → voor acceptatie-omgeving
26. Wijziging doen in feature branch...
~ cd projectmapje-met-git
~ git pull
~ git branch -b feature/nieuwe-modelpagina-208
~ git checkout feature/nieuwe-modelpagina-208
// lekker nieuwe modelpagina.html maken
~ git add modelpagina.html
~ git commit -m “Nieuwe modelpagina van de 208”
27. Wijziging op acceptatie zetten...
~ cd projectmapje-met-git-feature
// dus de map met die nieuwe modelpagina.html
~ git checkout develop
~ git merge feature/nieuwe-modelpagina-208
~ git push origin develop
29. Git + Cloud + Deployments
Ieder project een eigen git repository
Git repositories in de cloud bij Beanstalk
Iedereen heeft Beanstalk als remote (of origin)
Iedereen pusht uiteindelijk naar Beanstalk
Beanstalk kan branch-specifiek deployen
34. Best practices
1. Commit Related Changes
2. Commit Often
3. Don’t Commit Half-Done Work
4. Test Before You Commit
5. Write Good Commit Messages
6. Use Branches
7. Agree on a Workflow
Bron en uitleg: http://www.git-tower.com/learn/ebook/command-line/appendix/best-practices