Improved markup and added section on testing

Torsten Grote
2015-12-14 14:19:30 +00:00
parent aa1c3e9d7e
commit d289c47c00

@@ -1,35 +1,45 @@
Branches
# Branches
* Always work on a branch
* Name your branch after the ticket you're working on, e.g. `55-key-manager-refactoring`
* Push your branch at least once a day so everyone knows what you're working on -- that will help us to avoid conflicts
* When your branch is ready to merge:
* Make sure all tests are passing
* Rebase your branch if necessary to fix any merge conflicts
* Make sure **all** tests are passing
* Rebase your branch if necessary to fix any merge conflicts, e.g. `git pull origin master --rebase`
* Use `git push -f` to overwrite the remote branch after rebasing
* Open a merge request
* [Open a merge request](https://code.briarproject.org/akwizgran/briar/merge_requests/new)
* At least one other person must review your code before it's merged to master
* Don't push directly to master unless it's an emergency and the change is very simple
* Once your branch has been merged you can delete the remote branch
Issues
# Tests
* before pushing any code, make sure the tests still complete sucessfully
* to run them in Android Studio
* right-click on the briar-tests folder and select 'run all tests' to create a run configuration
* go to run > edit configurations to change the vm options for the 'all in briar-tests' configuration
* add `-Djava.library.path=../briar-desktop/libs` to the run configuration's vm options
* to run tests on the command line, do `gradle test`
# Issues
* When you start working on a ticket, assign it to yourself
* Label your ticket 'in progress' while you're working on it, then 'in code review' while it's being reviewed
* When your branch is merged, label the ticket 'fixed' and close it
* Label your ticket '[in progress](https://code.briarproject.org/akwizgran/briar/issues?state=opened&label_name=In+progress)' while you're working on it, then '[in code review](https://code.briarproject.org/akwizgran/briar/issues?state=opened&label_name=In+code+review)' while it's being reviewed
* When your branch is merged, label the ticket 'fixed' and close it or alternatively include 'Closes #55' in your commit message to close the ticket automatically.
* As a rule of thumb, if a ticket takes longer than a day, break it into smaller tickets (mention the parent in the description)
* Every ticket should be labelled 'bug', 'feature', 'feature request', 'task' or 'document'
* Bugs are mistakes that affect the user, e.g. potential crashes
* Features are work items that directly affect the user
* Feature requests are features that someone has asked for -- we might or might not implement them, but they're worth documenting
* Tasks are work items that don't directly affect the user, e.g. refactoring or research
* Documents are work items that produce text rather than software
Meetings
* Every ticket should be labelled 'bug', 'feature', 'feature request', 'task' or 'document'
* Bugs are mistakes that affect the user, e.g. potential crashes
* Features are work items that directly affect the user
* Feature requests are features that someone has asked for -- we might or might not implement them, but they're worth documenting
* Tasks are work items that don't directly affect the user, e.g. refactoring or research
* Documents are work items that produce text rather than software
# Meetings
* At the start of each week, let the team know what days you'll be working via the standup channel
* Post a daily update to the standup channel saying:
* What you worked on yesterday/today
* What you'll be working on today/tomorrow
* Any blockers
* What you worked on yesterday/today?
* What you'll be working on today/tomorrow?
* Any blockers?
* If you're online at 10am UTC, please post your update at that time so we can have a standup meeting