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
- Both
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.
Update:
As the fates had it, a somewhat related post titled ‘To fork or Branch’ was posted over at toolmantim.com.