From 6278096d53971cf99df455b94171364afb25efdd Mon Sep 17 00:00:00 2001 From: austin Date: Fri, 11 May 2018 09:03:36 -0700 Subject: Adds WHAT env variable description When contributing specific parts of k8s, its helpful to know how to slice the build to only build a certain binary. --- contributors/guide/github-workflow.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'contributors/guide/github-workflow.md') diff --git a/contributors/guide/github-workflow.md b/contributors/guide/github-workflow.md index a1429258..ac747abc 100644 --- a/contributors/guide/github-workflow.md +++ b/contributors/guide/github-workflow.md @@ -74,6 +74,22 @@ git checkout -b myfeature Then edit code on the `myfeature` branch. #### Build +The following section is a quick start on how to build Kubernetes locally, for more detailed information you can see [kubernetes/build](https://git.k8s.io/kubernetes/build/README.md). +The best way to validate your current setup is to build a small part of Kubernetes. This way you can address issues without waiting for the full build to complete. To build a specific part of Kubernetes use the `WHAT` environment variable to let the build scripts know you want to build only a certain package/executable. + +```sh +make WHAT=cmd/{$package_you_want} +``` + +*Note:* This applies to all top level folders under kubernetes/cmd. + +So for the cli, you can run: + +```sh +make WHAT=cmd/kubectl +``` + +If everything checks out you will have an executable in the `_output/bin` directory to play around with. *Note:* If you are using `CDPATH`, you must either start it with a leading colon, or unset the variable. The make rules and scripts to build require the current directory to come first on the CD search path in order to properly navigate between directories. -- cgit v1.2.3 From 828625ac8958c64686a87738d0f29201acdb25f6 Mon Sep 17 00:00:00 2001 From: Nikhita Raghunath Date: Sat, 3 Mar 2018 17:46:53 +0530 Subject: contributor guide: document the revert process --- contributors/guide/github-workflow.md | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'contributors/guide/github-workflow.md') diff --git a/contributors/guide/github-workflow.md b/contributors/guide/github-workflow.md index ac747abc..221a7921 100644 --- a/contributors/guide/github-workflow.md +++ b/contributors/guide/github-workflow.md @@ -251,3 +251,47 @@ git rebase -i upstream/master For mass automated fixups (e.g. automated doc formatting), use one or more commits for the changes to tooling and a final commit to apply the fixup en masse. This makes reviews easier. + +### Reverting a commit + +In case you wish to revert a commit, use the following instructions. + +_If you have upstream write access_, please refrain from using the +`Revert` button in the GitHub UI for creating the PR, because GitHub +will create the PR branch inside the main repository rather than inside your fork. + +1. Create a branch and sync it with upstream. + +```sh +# create a branch +git checkout -b myrevert + +# sync the branch with upstream +git fetch upstream +git rebase upstream/master +``` + +2. If the commit you wish to revert is a: + +- merge commit: + +```sh +# SHA is the hash of the merge commit you wish to revert +git revert -m 1 SHA +``` + +- single commit: + +```sh +# SHA is the hash of the single commit you wish to revert +git revert SHA +``` + +3. This will create a new commit reverting the changes. +Push this new commit to your remote. + +```sh +git push ${your_remote_name} myrevert +``` + +4. [Create a Pull Request](#7-create-a-pull-request) using this branch. -- cgit v1.2.3