Over the summer we switched our workflow to include GitHub in order to help up facilitate the rewrite of MouseTrap. Now that the summer is over, we are left wondering how we should handle contributions to the project.
MouseTrap has had two main workflows during the time that I have been on the project.
- Create ticket in Buzilla for the problem
- Create fix in a local git repository
- Squash multiple commits into a single commit if needed
- Upload and attach patch in Bugzilla
- Patch is reviewed and approved through Bugzilla
- Committer applies patch to the GNOME repository
- Create ticket in GitHub repository
- Create fix in a GitHub fork / main repository
- Open pull request referencing ticket pointed at the fix branch
- Patch and reviewed through GitHub
- Pull request is merged into the GitHub repository
I looked at a few other projects to see what workflows they used for contributing to the project.
https://docs.djangoproject.com/en/dev/internals/contributing/
- Create a ticket in Trac
- Create a fix in a GitHub fork
- Open pull request referencing the Trac ticket
- Link to the pull request in the ticket
- Patch is reviewed through GitHub
- Multiple commits are squashed into one when accepted
- Committer applies the patch to the GitHub repository
http://code.opencv.org/projects/opencv/wiki#Reporting-bugs
- Create a new ticket in the tracker (ChiliProject)
- Create a fix in a GitHub fork
- Squash commits so one ticket is covered per commit
- Open pull request referencing the ticket
- Committer merges the pull request into the GitHub repository
- Create a ticket in Bugzilla
- Create a fix in a GitHub fork
- Open pull request referencing the Bugzilla ticket
- Link to the pull request in the ticket
- Patch is reviewed through GitHub
- Multiple commits are squashed into one when accepted
- Committer applies the patch to the GNOME repository
- Create ticket in GitHub repository
- Create fix in a GitHub fork / main repository
- Open pull request referencing ticket pointed at the fix branch
- Patch and reviewed through GitHub
- Pull request is merged into the GitHub repository