From 02a822bcd389a3b28e3206523f4a5a686ff2fa47 Mon Sep 17 00:00:00 2001 From: Alan Bernstein Date: Tue, 20 Mar 2018 12:44:39 -0500 Subject: [PATCH] Merge README-dev.md into CONTRIBUTING.md --- CONTRIBUTING.md | 73 +++++++++++++++++++++++++++++++++++++++++-------- README-dev.md | 69 ---------------------------------------------- 2 files changed, 61 insertions(+), 81 deletions(-) delete mode 100644 README-dev.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d15c42ed7..10b19eae1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,30 +2,79 @@ ## Reporting a bug -If you have discovered a bug and don't see it in the [github issue tracker][5], [open a new issue][1] +If you have discovered a bug and don't see it in the [github issue tracker][5], [open a new issue][1]. ## Submitting a feature request -Feature requests are managed in Github issues. New features typically go through a [Proposal Process][4] +Feature requests are managed in Github issues, organized with [Zenhub](https://www.zenhub.com/), which is publicly available as a browser extension. New features typically go through a [Proposal Process][4] which starts by [opening a new issue][1] that describes the new feature proposal. -## Submitting code changes +## Making code contributions Before you start working on new features, you should [open a new issue][1] to let others know what -you're doing before you start working, otherwise you run the risk of duplicating effort. This also +you're doing, otherwise you run the risk of duplicating effort. This also gives others an opportunity to provide input for your feature. If you want to help but you aren't sure where to start, check out our [github label for low-effort issues][6]. -- Fork the [Pilosa repository][2] and then clone your fork: - ```shell - git clone git@github.com:/pilosa.git +### Development Environment + +- Ensure you have a recent version of [Go](https://golang.org/dl/) installed. Pilosa generally supports the current and previous minor versions; check our [travis file](../.travis.yml) for the most up-to-date information. + +- Make sure `$GOPATH` environment variable points to your Go working directory and `$PATH` incudes `$GOPATH/bin`. + +- Fork the [Pilosa repository][2] to your own account. + +- Create a directory (note that we use `github.com/pilosa`, NOT `github.com/USER`) and clone your own Pilosa repo: + + ```sh + mkdir -p ${GOPATH}/src/github.com/pilosa && cd $_ + git clone git@github.com:${USER}/pilosa.git + ``` + +- `cd` to your pilosa directory: + + ```sh + cd ${GOPATH}/src/github.com/pilosa/pilosa + ``` + +- Install `dep` to manage dependencies: + + ```sh + go get -u github.com/golang/dep/cmd/dep + ``` + +- Install Pilosa command line tools: + + ```sh + make install + # or: + # dep ensure && go install github.com/pilosa/pilosa/cmd/... + ``` + + Running `pilosa` should now run a Pilosa instance. + +- In order to sync your fork with upstream Pilosa repo, add an *upstream* to your repo: + + ```sh + cd ${GOPATH}/src/github.com/pilosa/pilosa + git remote add upstream git@github.com:pilosa/pilosa.git + ``` + +### Submitting code changes + +- Before starting to work on a task, sync your branch with the upstream: + + ```sh + git fetch upstream + git checkout master + git merge upstream/master ``` - Create a local feature branch: - ```shell + ```sh git checkout -b something-amazing ``` @@ -33,13 +82,13 @@ If you want to help but you aren't sure where to start, check out our [github la - Make sure that you've written tests for your new feature, and then run the tests: - ```shell + ```sh make test ``` - Verify that your pull request is applied to the latest version of code on github: - ```shell + ```sh git remote add upstream git@github.com:pilosa/pilosa.git git fetch upstream git rebase -i upstream/master @@ -47,7 +96,7 @@ If you want to help but you aren't sure where to start, check out our [github la - Push to your fork: - ```shell + ```sh git push -u something-amazing ``` @@ -59,4 +108,4 @@ If you want to help but you aren't sure where to start, check out our [github la [3]: https://github.com/pilosa/pilosa/compare/ [4]: https://github.com/pilosa/general/blob/master/proposal.md [5]: https://github.com/pilosa/pilosa/issues -[6]: https://github.com/pilosa/pilosa/issues?q=is%3Aopen+is%3Aissue+label%3Anewcomer \ No newline at end of file +[6]: https://github.com/pilosa/pilosa/issues?q=is%3Aopen+is%3Aissue+label%3Anewcomer diff --git a/README-dev.md b/README-dev.md deleted file mode 100644 index 809befbc3..000000000 --- a/README-dev.md +++ /dev/null @@ -1,69 +0,0 @@ - -Development Environment -======================= - -Install Go versions 1.6.2+ or 1.7 for your platform. - -Fork `github.com/pilosa/pilosa` to your own account. The forked repo will be private. - -Make sure `$GOPATH` environment variable points to your Go working directory and `$PATH` incudes `$GOPATH/bin`. - -Create a directory (note that we use `github.com/pilosa`, NOT `github.com/USER`) and clone your own Pilosa repo: - -```sh -mkdir -p ${GOPATH}/src/github.com/pilosa && cd $_ -git clone git@github.com:${USER}/pilosa.git -``` - -`cd` to your pilosa directory: - -```sh -cd ${GOPATH}/src/github.com/pilosa/pilosa -``` - -Install `dep` to manage dependencies: - -```sh -go get -u github.com/golang/dep/cmd/dep -``` - -Install Pilosa command line tools: - -```sh -make install -# or: -# dep ensure && go install github.com/pilosa/pilosa/cmd/... -``` - -Running `pilosa` should now run a Pilosa instance. - -In order to sync your fork with upstream Pilosa repo, add an *upstream* to your repo: - -```sh -cd ${GOPATH}/src/github.com/pilosa/pilosa -git remote add upstream git@github.com:pilosa/pilosa.git -``` - -Before starting to work on a task, sync your branch with the upstream: - -```sh -git fetch upstream -git checkout master -git merge upstream/master -``` - -Create a branch for the task: - -```sh -git checkout -b a-branch-for-the-task -``` - -Update the code in the branch, and commit it. - -Push it to your own repo: - -```sh -git push --set-upstream origin a-branch-for-the-task -``` - -All left to do is creating a pull request on github.com.