A few guidelines to help make sure we don't step all over each other.
- Open issues prior to starting work on a task (so feedback can be collected before you get too far along).
- Use the GitHub Flow method of managing branches/code changes.
- Start all work in a new branch created off the tip of master
- Commit work to that branch (e.g.
feature/189-new-emails
) - Squash commits into a single commit prior to pushing.
- Push to the same named branch on GitHub.
- Open a Pull Request describing the desired outcome of merging the branch back into master and referencing the previously created issue(s) it closes.
- Wait for a 👍 (or equivilant) before merging -- unless the code review stays dormant for more than a day or two.
- Repeat the process until excellent.
- We ❤️ TDD.
- New features and bug fixes should include tests as applicable.
- Run
rake test
to handle unit and integration tests.