message: Add Cargo backport instructions
diff: +---
  +layout: default
  +title: Beta Backporting &middot; The Rust Programming Language
  +---
  +
  +# Beta Backporting
  +
  There's a steady trickle of patches that need to be ported to the beta
  branch. Only a few people are even aware of the process, but this is
  -actually something anybody can do. Here's how it works:
  +actually something anybody can do.
  +
  +## Backporting in `rust-lang/rust`
  When somebody identifies a PR that should be backported to beta they
  tag it
  @@ -19,15 +28,40 @@ ready for a backport is those tagged [both `beta-nominated` and
  So now somebody needs to go through those PR's and cherry-pick their
  commits to the beta branch. Those cherry-picks are then submitted as a
  -PR _against the beta branch_, with a title started with `beta` (so
  +PR _against the beta branch_, with a title started with `[beta]` (so
  reviewers can see its specialness). The OP of that PR should contain
  links to all the PRs being backported. [Here's an
  example](https://github.com/rust-lang/rust/pull/36634). Anybody can
  make these PRs!
  After that a reviewer needs to verify that the backport looks correct,
  -that it's submitted to the beta branch, and then hit the merge
  -button. Finally, they need to follow the links to the original PRs and
  -_remove the `beta-nominated` tag_ (people forget to do this a
  -lot). This last step indicates that the backport has been completed,
  -so the `beta-nominated` and `beta-accepted` tags have three states.
  +that it's submitted to the beta branch, and then approve via `@bors: r+`.
  +Finally, they need to follow the links to the original PRs and _remove the
  +`beta-nominated` tag_ (people forget to do this a lot). This last step indicates
  +that the backport has been completed, so the `beta-nominated` and
  +`beta-accepted` tags have three states.
  +
  +## Backporting in `rust-lang/cargo`
  +
  +The procedure for backporting fixes to Cargo is similar bug slightly more
  +extended than the `rust-lang/rust` repo's procedure. Currently there aren't
  +backport tags in the Cargo repository, but you'll initiate the backport process
  +by commenting on an associated PR, requesting a backport. Once a Cargo team
  +member has approved the backport to happen you're good to start sending PRs!
  +
  +* First you'll send a PR to the `rust-1.21.0` branch of Cargo (replace 1.21 with
  + the current rustc beta version number). Like with `rust-lang/rust` you'll
  + prefix the title of your PR with `[beta]` and ensure it's flagged as going to
  + beta.
  +
  +* Next a Cargo reviewer will `@bors: r+` the PR and put it into the queue.
  + Eventually bors will automatically merge the PR (when tests are passing) to
  + the appropriate Cargo branch.
  +
  +* Finally you'll send a PR to the `rust-lang/rust` repository's `beta` branch,
  + updating the Cargo submodule. The Cargo submodule should be updated to the tip
  + of the `rust-1.21.0` branch (the branch your Cargo PR was merged to). As like
  + before, ensure you've got `[beta]` in the PR title.
  +
  +After that's all said and done the Cargo change is ready to get scheduled onto
  +the beta release!
  