This series of blog posts are for those who have yet to learn git. They will enable the lightbulb moments required to use git as a productive tool in your development workflow.


01 – git has won


Why git’s better

Here you learn the reasons why git is better than previous methods of VCS. This is true even for non-open source projects with just a few contributors. Use this to help convince others it’s the way to go.


02 – Power of the server in your client

03 – Work on multiple changes concurrently

04 – Backup as often as you like

05 – End to Big Bang commits


Complexity dispelled

The terminology and process of git are different to what you have used before. There’s no getting around it, this may well be confusing to begin with but use these posts to avoid some needless pain and suffering.


06 – init, clone and origin

07 – push and pull

08 – checkout this branch

09 – add and remove, checkout and reset

10 – review with status, diff and log

11 – branch off, commit, and merge back


A template workflow

Knowing many of the git commands available is one thing, but how are you meant to use them to collaboratively develop software with others? Here we discuss a simple yet powerful set of workflow cycles that boil down daily git interactions into just three repeating tasks.


12 – Never, EVER, push to master

13 – Cycles: the introduction

14 – Setup: the origin repo

15 – The outer cycle

16 – The middle cycle

17 – The inner cycle


Where next?

Pointers for next steps on the journey to mastering git.


18 – Conclusion



A – Caveats