1 Star 0 Fork 0

zhuchance / kubernetes

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
pull-requests.md 4.39 KB
一键复制 编辑 原始数据 按行查看 历史
Tim Hockin 提交于 2016-10-25 22:24 . Remove 'this is HEAD' warning on docs

Pull Request Process

An overview of how pull requests are managed for kubernetes. This document assumes the reader has already followed the development guide to set up their environment.

Life of a Pull Request

Unless in the last few weeks of a milestone when we need to reduce churn and stabilize, we aim to be always accepting pull requests.

Either the on call manually or the github "munger" submit-queue plugin automatically will manage merging PRs.

There are several requirements for the submit-queue to work:

  • Author must have signed CLA ("cla: yes" label added to PR)
  • No changes can be made since last lgtm label was applied
  • k8s-bot must have reported the GCE E2E build and test steps passed (Jenkins unit/integration, Jenkins e2e)

Additionally, for infrequent or new contributors, we require the on call to apply the "ok-to-merge" label manually. This is gated by the whitelist.

Before sending a pull request

The following will save time for both you and your reviewer:

  • Enable pre-commit hooks and verify they pass.
  • Verify make verify passes.
  • Verify make test passes.
  • Verify make test-integration passes.

Release Notes

This section applies only to pull requests on the master branch. For cherry-pick PRs, see the Cherrypick instructions

  1. All pull requests are initiated with a release-note-label-needed label.
  2. For a PR to be ready to merge, the release-note-label-needed label must be removed and one of the other release-note-* labels must be added.
  3. release-note-none is a valid option if the PR does not need to be mentioned at release time.
  4. release-note labeled PRs generate a release note using the PR title by default OR the release-note block in the PR template if filled in.
  • See the PR template for more details.
  • PR titles and body comments are mutable and can be modified at any time prior to the release to reflect a release note friendly message.

The only exception to these rules is when a PR is not a cherry-pick and is targeted directly to the non-master branch. In this case, a release-note-* label is required for that non-master PR.

Reviewing pre-release notes

At any time, you can see what the release notes will look like on any branch. (NOTE: This only works on Linux for now)

$ git pull https://github.com/kubernetes/release
$ RELNOTES=$PWD/release/relnotes
$ cd /to/your/kubernetes/repo
$ $RELNOTES -man # for details on how to use the tool
# Show release notes from the last release on a branch to HEAD
$ $RELNOTES --branch=master

Visual overview

PR workflow

Other notes

Pull requests that are purely support questions will be closed and redirected to stackoverflow. We do this to consolidate help/support questions into a single channel, improve efficiency in responding to requests and make FAQs easier to find.

Pull requests older than 2 weeks will be closed. Exceptions can be made for PRs that have active review comments, or that are awaiting other dependent PRs. Closed pull requests are easy to recreate, and little work is lost by closing a pull request that subsequently needs to be reopened. We want to limit the total number of PRs in flight to:

  • Maintain a clean project
  • Remove old PRs that would be difficult to rebase as the underlying code has changed over time
  • Encourage code velocity

Automation

We use a variety of automation to manage pull requests. This automation is described in detail elsewhere.

Analytics

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/meoom/kubernetes.git
git@gitee.com:meoom/kubernetes.git
meoom
kubernetes
kubernetes
v1.5.6

搜索帮助

344bd9b3 5694891 D2dac590 5694891