From e53e113dcde3e3686095c3661307efccc5c7e64e Mon Sep 17 00:00:00 2001 From: elijah Date: Wed, 18 Feb 2015 23:44:14 -0800 Subject: initial conversation from leap_doc and leap_website --- pages/docs/get-involved/coding.haml | 73 +++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 pages/docs/get-involved/coding.haml (limited to 'pages/docs/get-involved/coding.haml') diff --git a/pages/docs/get-involved/coding.haml b/pages/docs/get-involved/coding.haml new file mode 100644 index 0000000..236aa64 --- /dev/null +++ b/pages/docs/get-involved/coding.haml @@ -0,0 +1,73 @@ +- @title = "Contributing Code" +- @summary = "How to issue a pull request." + +%p All development happens via pull requests. To add a new feature or fix a bug, the developer must create a new branch off develop, make their changes, and then issue a pull request for another developer to review before the changes get merged back into develop. + +%p Here is an example, using github with username rms and repository bitmask_client. You don't need to use github, but it is a friendly way to get started. + +%p + %b Step 1 — Fork on github + +%p Login to github.com as 'rms', browse to #{link 'https://github.com/leapcode/bitmask_client'}, and click the fork button. + +%p Now you should have a fork of the code available at https://github.com/rms/bitmask_client. + +%p + %b Step 2 — Set up local clone + +%p Clone the upstream repository: + +%pre + %code + git clone https://leap.se/git/bitmask_client + cd bitmask_client + +%blockquote + .p NOTE: Alternately, you can use the github mirror at https://github.com/leapcode/bitmask_client. It does not matter which one you choose. + +%p + %b Step 4 — Add a "remote" for your fork + +%p Next, you need to add the fork you created on github as an alternate remote in your local repository: + +%pre + %code + git remote add rms https://github.com/rms/bitmask_client.git + +%p + %b Step 5 — Create a new feature branch + +%pre + %code + git fetch origin + git checkout develop + git checkout -b feature/my_new_feature + +%p + %b Step 6 — Hack away + +%P Make all your changes in your feature/my_new_feature branch, with a separate git commit for each discrete modification you make. + +%p + %b Step 7 — Prepare for pull request + +%p Once you are happy with your branch, prepare it for a pull request by rebasing on the latest upstream develop branch. This will also give you an opportunity to clean up your commit history by squashing and changing commit messages. + +%pre + %code + git fetch origin # ensure the latest + git checkout feature/my_new_feature # if not already checked out + git rebase -i develop # rebase and clean up commits + +%p + %b Step 8 — Submit pull request + +%p Next, you will push your local feature branch to your fork on github, and then issue a pull request. + +%pre + %code + git push rms feature/my_new_feature + +%p Then browse to https://github.com/rms/bitmask_client, where you will see a handy button to issue a pull request. Make sure that the upstream branch is leapcode/bitmask_client:develop and you are requesting the merge of rms/bitmask_client:feature/my_new_feature. + +Then you are done. Some other developer will get a notice of your pull request, review the changes, and merge into upstream develop branch. If they have questions or comments, you will get an email from github. -- cgit v1.2.3