- Checkout branch ponzu-dev
- Make code changes
- Test changes to ponzu-dev branch
- make a commit to ponzu-dev
- to manually test, you will need to use a new copy (ponzu new path/to/code), but pass the --dev flag so that ponzu generates a new copy from the ponzu-dev branch, not master by default (i.e.
$ponzu new --dev /path/to/code
) - build and run with $ ponzu build and $ ponzu run
- To add back to master:
- first push to origin ponzu-dev
- create a pull request
- will then be merged into master
A typical contribution workflow might look like:
# clone the repository and checkout ponzu-dev
$ git clone https://github.com/ponzu-cms/ponzu path/to/local/ponzu # (or your fork)
$ git checkout ponzu-dev
# install ponzu with go get or from your own local path
$ go get github.com/ponzu-cms/ponzu/...
# or
$ cd /path/to/local/ponzu
$ go install ./...
# edit files, add features, etc
$ git add -A
$ git commit -m 'edited files, added features, etc'
# now you need to test the feature.. make a new ponzu project, but pass --dev flag
$ ponzu new --dev /path/to/new/project # will create $GOPATH/src/path/to/new/project
# build & run ponzu from the new project directory
$ cd /path/to/new/project
$ ponzu build && ponzu run
# push to your origin:ponzu-dev branch and create a PR at ponzu-cms/ponzu
$ git push origin ponzu-dev
# ... go to https://github.com/ponzu-cms/ponzu and create a PR
Note: if you intend to work on your own fork and contribute from it, you will
need to also pass --fork=path/to/your/fork
(using OS-standard filepath structure),
where path/to/your/fork
must be within $GOPATH/src
, and you are working from a branch
called ponzu-dev
.
For example:
# ($GOPATH/src is implied in the fork path, do not add it yourself)
$ ponzu new --dev --fork=github.com/nilslice/ponzu /path/to/new/project