- Install Docker.
- Install Go. I'm working with 1.9+, it may work with early versions, but not granted.
- Download the sources and switch the working directory:
go get -u -d github.com/diegobernardes/flare cd $GOPATH/src/github.com/diegobernardes/flare
- Configure the repository.
- Run
make configure
.
First, you need to fork the Flare repository. After this, add a new remote pointing to your fork.
git remote rename origin upstream
git remote add origin [email protected]:{you}/flare.git # you may use http, your choice.
Now you can work with your own repository and fetch the changes from official Flare repository. Let's create a branch to work:
git checkout master
git checkout -t -b feature
# do the commits.
git push origin feature
We work with rebases to squash multiple commits on feature branchs, if you did more then 1 commit on a feature branch, you must do this:
git checkout feature
git rebase -i $(git merge-base feature master)
git push --force-with-lease
One last thing, before create the pull request, make sure your branch is updated:
git fetch upstream
git checkout master
git rebase upstream/master
git push --force-with-lease
git checkout feature
git rebase master
git push --force-with-lease
Now you ready to go, submit the pull request.
We follow a similar pattern used by Golang. I try to keep the first line lower then 72 characters and my hard limit is 100.
module: message
body
(Issue, Close, Resolves): #123
The module is something that represent the commit intent.
A typical workflow is:
- Fork the repository.
- Create a feature branch.
- Add tests for your change.
- Run
make pre-pr
. If your tests don't pass or the linter complain, return to step 3. - Add, commit and push your changes.
- Submit a pull request.