diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2018-04-17 23:39:54 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-17 23:39:54 +0100 |
commit | d906a8796cec1fc4d14144f53e505ab215bdab0c (patch) | |
tree | f9bfad54b8c71e1909b869183d90c2a03d8b97dc /script | |
parent | 8529ac9b98e9d05c2616b855a497ee88c4f5c955 (diff) | |
parent | 0b3d85925751c2b3fd49effa50f7bd7b558b4926 (diff) | |
download | libgit2-d906a8796cec1fc4d14144f53e505ab215bdab0c.tar.gz |
Merge pull request #4476 from pks-t/pks/backport-script
scripts: add backporting script
Diffstat (limited to 'script')
-rwxr-xr-x | script/backport.sh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/script/backport.sh b/script/backport.sh new file mode 100755 index 000000000..3c2f899d6 --- /dev/null +++ b/script/backport.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +if test $# -eq 0 +then + echo "USAGE: $0 <#PR> [<#PR>...]" + exit +fi + +commits= + +for pr in $* +do + mergecommit=$(git rev-parse ":/Merge pull request #$pr" || exit 1) + mergebase=$(git merge-base "$mergecommit"^1 "$mergecommit"^2 || exit 1) + + commits="$commits $(git rev-list --reverse "$mergecommit"^2 ^"$mergebase")" +done + +echo "Cherry-picking the following commits:" +git rev-list --no-walk --oneline $commits +echo + +git cherry-pick $commits |