As explained in the previous section it is often a good idea to use a server to store the main repository. The main reason for this is that everyone that has access can clone the repository from the same location and send the modifications to the same location, using it like a hub.
There are several solutions available to help us work in such a situation.
For example use a company server to store the repository or set up a virtual machine and store it in the cloud.
We chose not to go down this route, but to use a third party provider. For our own applications we use github, but customers may provide us with their own Git server or perhaps bitbucket.
Each option requires us to do certain things a little bit different than other options, this usually comes down to how to merge branches or set up a new repository.