With teams growing too large, branching has become an important concept for developers. Though there are various strategies to do branching of code, release-based branching is a simple and important strategy. A few pointers for starting with development for a new product are listed below.
In case there is a production issue that requires a hotfix then the below approach can be followed.

Create a new hotfix branch vH1_1.0 from the master branch.
Hotfix code should be committed in-branch vH1_1.0
After the hotfix is released to production, the merge of vH1_1.0 should be done to the Master branch as well as to the ongoing release branch v2.0.
I highly recommend Github desktop for all branching and code merging activities as it's very simple to use.

Github URL - https://desktop.github.com