We use the Gitflow Workflow, which was first published in 2010 2010 in a blog post from Vincent Driessen at nvie. We have extended this workflow to include country specific version of the component managed through the repository.
Using the Git branching features, each of these repositories will have a master branch (the latest stable version or production release) and a separate branch for each development phase.
In case a bug has to be fixed quickly into the production release (master branch), a hotfix branch is created. This branch is merged directly into the master branch and into the develop branch. The master branch will then be tagged with an updated version number.
After each official release and update of the master branch, the new features/bug fixes will be integrated into the countries specific develop branches, adapted and tested against implementation's specific requirements before releasing for the country.
To easily manage git workflow, here are some tools:
Naming convention will be established for branches and commits. Every commit should have an author and a short description. The naming and format conventions will be discussed during the Developers Workshop.