How does Git branching work and what is your preferred branching strategy?

Technical