In this scenario, you usually follow these simple steps:
- Someone initializes the remote repository (in a local Git server, on GitHub, BitBucket, or so on)
- Other team members clone the original repository on their computer and start working
- When the work is done, you push it to the remote to make it available to other colleagues
At this point, it is only a matter of internal rules and patterns.