Before reporting an issue, please search the open issues for the project here to ensure duplicate issues aren't created. Also, for bugs try updating the project to see if it has not already been fixed before submitting.
Branches should include the name of the associated github issue.
-
Create a fork of hermes and ensure the master branch on the fork is up to date with the upstream
-
Clone down your fork and the hermes project itself
-
Create a branch in your fork and push it up to your remote
-
Go into your local copy of the hermes repository (the main project not your fork) and run
git remote add fork https://github.com/<your user name>/hermes git fetch fork git checkout -t fork/<name of your branch>
-
Now you should be in your branch but in the hermes repository (this is necessary so that the go imports will work correctly). Run
dep ensure
ormake ensure
to install all vendored dependencies
- Make your changes along with tests. You can run tests either with
go test ./...
or you could use the make target by runningmake test
. - Before committing, always make sure that all tests pass, run
dep ensure
ormake ensure
to ensure all dependencies are captured, and rungo fmt ./...
- Commit using the
-s
to sign your commit - When your pull request is ready to be merged, first sqash any commits made on your branch so the PR contains a single commit then submit