Using Git with Source Tree for proper version control management
In case you don’t know about it, Git is a distributed revision control system, also known as a source control management system (SCM). It allows to track versions by following changes in your source code. Git allows you to have an entire copy of your git repository locally and push your changes to your remote repository, hosted for example on github or bitbucket. With Git you can create differents branches (a master branch, a development branch, a feature branch etc) and follow different workflows while being able to maintain them and merge them easily.
I’ve been using git in xcode since the beginning of my project through xcode, but have then discovered the free app SourceTree and it has been the revelation of the week. SourceTree provides you with a very graphic interface to follow your branches, and a direct integration with bitbucket (very useful to keep an online copy of your project in a private directory, which is not allowed by the free version of github).
It also comes with git flow out of the box, a reference in git branching models. You can read more about using this model on the conceptor’s page: A successful Git branching model.