This gist provides some info on how to collaborate on software projects using git+GitHub. It is focused on the Fork & Pull collaboration model. This model is described as:
In the fork and pull model, anyone can fork an existing repository and push changes to their personal fork without needing access to the source repository.
Note: I mostly use GitHub. I haven't verified that these instructions will work for other hosting services such as GitLab. I suspect they will but I'd love some feedback on this.