GitHub: Forking versus being a committer
Git changes the game when it comes to how you collaborate. GitHub even more so.
If you want to collaborate with someone on GitHub, you have three options:
- Add them as a committer
- Have them fork your repository, and you pull changes as appropriate
So which should you use? It depends.
If you will be working closely or in tandem with the individual, you might want to add them as a committer, allowing them to push to your repository at will. This is pretty comparable to how you might work with others on a subversion repo.
If it’s more asynchronous work, forking would be more appropriate. This is particularly applicable to open source or large projects.
Of course, you could do both. They create a fork to use as their sandbox, and then you’re able to push changes to your repository. I suspect that this is how the rails repo works, with the core team having access to it, but having their own forks.