From 3cb5ce3758ee2454fa89575d6fe49d3702bf1c1d Mon Sep 17 00:00:00 2001 From: Elastic Jasper Date: Fri, 1 Apr 2016 15:57:26 -0400 Subject: [PATCH] Backport PR #6736 --------- **Commit 1:** [internal] Remove all variable redeclarations Redeclaring variables causes ambiguity and serves no purpose. It actually causes a runtime error when you do it with `let`, and we can enforce not doing it via a linter rule. * Original sha: de20762889a72c060e46b5e7042320c71e44ad92 * Authored by Court Ewing on 2016-04-01T18:21:55Z --- backport--instructions.rej | 83 ++++++++++++++++++++++++++++++++ backport-commit-message.rej | 12 +++++ backport-guided-begin.rej | 12 +++++ backport-guided-finish.rej | 10 ++++ backport-wrangle-into-commit.rej | 12 +++++ 5 files changed, 129 insertions(+) create mode 100644 backport--instructions.rej create mode 100644 backport-commit-message.rej create mode 100755 backport-guided-begin.rej create mode 100755 backport-guided-finish.rej create mode 100755 backport-wrangle-into-commit.rej diff --git a/backport--instructions.rej b/backport--instructions.rej new file mode 100644 index 0000000000000..830479799b584 --- /dev/null +++ b/backport--instructions.rej @@ -0,0 +1,83 @@ +Backport of PR #6736 to branch 4.5 failed + +https://github.com/elastic/kibana/pull/6736 + + +- 3 patches failed to apply +- 3 patches were applied successfully + +------------------------------------- + +At this point, you need to manually resolve these conflicts on your machine and +push the changes back up to this upstream branch so the PR is updated with your +changes. The following instructions and scripts should help with that. + +All of the provided scripts assume that the remote "upstream" is where the +backport branch exists and that your local branch has the exact same name as +the upstream branch. + +First, check out this branch locally: + + git fetch upstream jasper/backport/6736/4.5 + git checkout jasper/backport/6736/4.5 + +Now, just follow one of these two paths: + + +1. GUIDED BACKPORT + +You should do the guided backport if you want to apply the backported changes +while resolving the conflicts on each commit. For most cases, this is what you +want to do. + +The following script will rebase the commits that need to be backported onto +a new temporary branch. Resolve any conflicts as you normally would during a +rebase. Do not remove these backport-*.rej files, and feel free to add +additional commits if that's necessary: + + sh backport-guided-begin.rej + +Once the conficts are resolved and the rebase is completed, the following +script will update the local backport branch with the changes, remove the +temporary branch that was created, remove the remnants of this backport commit +and squash the newly resolved commits (and any others you may have added) into +a single backport commit with the proper commit message: + + sh backport-guided-finish.rej + +At this point, you should be on the local backport branch, and it should be +exactly 1 commit ahead of the intended target. The commit message should be +very similar if not identical to the PR itself, and the changeset should +include all of the changes you intended to backport and none of these +backport-*.rej files. + +Now just replace the contents of the pull request with your local changes: + + git push -f upstream jasper/backport/6736/4.5 + + +2. ALMOST COMPLETELY MANUAL + +You should do this option if there are just so many conflicts that it's easier +to rebuild the entire changeset from scratch. You'll still work on the local +backport branch which should be up to date with the intended target. + +Feel free to add as many commits as you'd like and don't worry about fancy +commit messages - we're just going to squash them down and replace the message +when you're finished. + +Once the changes are committed on your local backport branch, the following +script will remove the remnants of this backport commit and squash the newly +created commits into a single backport commit with the proper commit message. + + sh backport-wrangle-into-commit.rej + +At this point, you should be on the local backport branch, and it should be +exactly 1 commit ahead of the intended target. The commit message should be +very similar if not identical to the PR itself, and the changeset should +include all of the changes you intended to backport and none of these +backport-*.rej files. + +Now just replace the contents of the pull request with your local changes: + + git push -f upstream jasper/backport/6736/4.5 diff --git a/backport-commit-message.rej b/backport-commit-message.rej new file mode 100644 index 0000000000000..02d1650ea399b --- /dev/null +++ b/backport-commit-message.rej @@ -0,0 +1,12 @@ +Backport PR #6736 +--------- + +**Commit 1:** +[internal] Remove all variable redeclarations + +Redeclaring variables causes ambiguity and serves no purpose. It +actually causes a runtime error when you do it with `let`, and we can +enforce not doing it via a linter rule. + +* Original sha: de20762889a72c060e46b5e7042320c71e44ad92 +* Authored by Court Ewing on 2016-04-01T18:21:55Z \ No newline at end of file diff --git a/backport-guided-begin.rej b/backport-guided-begin.rej new file mode 100755 index 0000000000000..f5f096d99f2f6 --- /dev/null +++ b/backport-guided-begin.rej @@ -0,0 +1,12 @@ +#!/bin/sh + +REMOTE="upstream" +BRANCH="jasper/backport/6736/4.5" +WORKING_BRANCH="tmp/$BRANCH" +STARTING_SHA="de20762889a72c060e46b5e7042320c71e44ad92" +ENDING_SHA="de20762889a72c060e46b5e7042320c71e44ad92" + +git fetch $REMOTE + +git checkout -b $WORKING_BRANCH $ENDING_SHA +git rebase $STARTING_SHA^ --onto $BRANCH diff --git a/backport-guided-finish.rej b/backport-guided-finish.rej new file mode 100755 index 0000000000000..5463ef26c8cf7 --- /dev/null +++ b/backport-guided-finish.rej @@ -0,0 +1,10 @@ +#!/bin/sh + +BRANCH="jasper/backport/6736/4.5" +WORKING_BRANCH="tmp/$BRANCH" + +git checkout $BRANCH +git reset --hard $WORKING_BRANCH +git branch -D $WORKING_BRANCH + +sh backport-wrangle-into-commit.rej diff --git a/backport-wrangle-into-commit.rej b/backport-wrangle-into-commit.rej new file mode 100755 index 0000000000000..f3331698adfac --- /dev/null +++ b/backport-wrangle-into-commit.rej @@ -0,0 +1,12 @@ +#!/bin/sh + +REMOTE="upstream" +BRANCH="jasper/backport/6736/4.5" +COMMIT_MSG=`cat backport-commit-message.rej` + +git reset --soft $REMOTE/$BRANCH +git stash +git reset --hard HEAD^ +git stash apply --index + +git commit -m "$COMMIT_MSG" --no-verify