aboutsummaryrefslogtreecommitdiff
path: root/dev/merge_spark_pr.py
diff options
context:
space:
mode:
authorAndrew Ash <andrew@andrewash.com>2014-02-12 23:23:06 -0800
committerPatrick Wendell <pwendell@gmail.com>2014-02-12 23:23:06 -0800
commit6ee0ad8fba660b48ef32dfa2f015b59cd5353a6e (patch)
treec0073d3de8004ef2dafd7ca1012a4ce398f0d787 /dev/merge_spark_pr.py
parent7fe7a55c820c6669c4ecccaa8599d05aec1b64be (diff)
downloadspark-6ee0ad8fba660b48ef32dfa2f015b59cd5353a6e.tar.gz
spark-6ee0ad8fba660b48ef32dfa2f015b59cd5353a6e.tar.bz2
spark-6ee0ad8fba660b48ef32dfa2f015b59cd5353a6e.zip
SPARK-1073 Keep GitHub pull request title as commit summary
The first line of a git commit message is the line that's used with many git tools as the most concise textual description of that message. The most common use that I see is in the short log, which is a one line per commit log of recent commits. This commit moves the line Merge pull request #%s from %s. Lower into the message to reserve the first line of the resulting commit for the much more important pull request title. http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html Author: Andrew Ash <andrew@andrewash.com> Closes #574 from ash211/gh-pr-merge-title and squashes the following commits: b240823 [Andrew Ash] More merge_message improvements d2986db [Andrew Ash] Keep GitHub pull request title as commit summary
Diffstat (limited to 'dev/merge_spark_pr.py')
-rwxr-xr-xdev/merge_spark_pr.py19
1 files changed, 10 insertions, 9 deletions
diff --git a/dev/merge_spark_pr.py b/dev/merge_spark_pr.py
index 03f8fc2893..93621c96da 100755
--- a/dev/merge_spark_pr.py
+++ b/dev/merge_spark_pr.py
@@ -96,19 +96,20 @@ def merge_pr(pr_num, target_ref):
commits = run_cmd(['git', 'log', 'HEAD..%s' % pr_branch_name,
'--pretty=format:%h [%an] %s']).split("\n\n")
- merge_message = "Merge pull request #%s from %s.\n\n%s\n\n%s" % (
- pr_num, pr_repo_desc, title, body)
- merge_message_parts = merge_message.split("\n\n")
merge_message_flags = []
- for p in merge_message_parts:
- merge_message_flags = merge_message_flags + ["-m", p]
+ for p in [title, body]:
+ merge_message_flags += ["-m", p]
+
authors = "\n".join(["Author: %s" % a for a in distinct_authors])
- merge_message_flags = merge_message_flags + ["-m", authors]
- merge_message_flags = merge_message_flags + [
- "-m", "Closes #%s and squashes the following commits:" % pr_num]
+
+ merge_message_flags += ["-m", authors]
+
+ # The string "Closes #%s" string is required for GitHub to correctly close the PR
+ merge_message_flags += ["-m",
+ "Closes #%s from %s and squashes the following commits:" % (pr_num, pr_repo_desc)]
for c in commits:
- merge_message_flags = merge_message_flags + ["-m", c]
+ merge_message_flags += ["-m", c]
run_cmd(['git', 'commit', '--author="%s"' % primary_author] + merge_message_flags)