|
@@ -2902,6 +2902,12 @@ class _GerritChangelistImpl(_ChangelistCodereviewBase):
|
|
|
title = options.title
|
|
|
automatic_title = False
|
|
|
|
|
|
+ # Extract bug number from branch name.
|
|
|
+ bug = options.bug
|
|
|
+ match = re.match(r'(?:bug|fix)[_-]?(\d+)', self.GetBranch())
|
|
|
+ if not bug and match:
|
|
|
+ bug = match.group(1)
|
|
|
+
|
|
|
if options.squash:
|
|
|
self._GerritCommitMsgHookCheck(offer_removal=not options.force)
|
|
|
if self.GetIssue():
|
|
@@ -2952,7 +2958,7 @@ class _GerritChangelistImpl(_ChangelistCodereviewBase):
|
|
|
confirm_or_exit(action='edit')
|
|
|
if not options.force:
|
|
|
change_desc = ChangeDescription(message)
|
|
|
- change_desc.prompt(bug=options.bug)
|
|
|
+ change_desc.prompt(bug=bug)
|
|
|
message = change_desc.description
|
|
|
if not message:
|
|
|
DieWithError("Description is empty. Aborting...")
|
|
@@ -2971,7 +2977,7 @@ class _GerritChangelistImpl(_ChangelistCodereviewBase):
|
|
|
change_desc = ChangeDescription(message)
|
|
|
|
|
|
if not options.force:
|
|
|
- change_desc.prompt(bug=options.bug)
|
|
|
+ change_desc.prompt(bug=bug)
|
|
|
# On first upload, patchset title is always this string, while
|
|
|
# --title flag gets converted to first line of message.
|
|
|
title = 'Initial upload'
|
|
@@ -4868,6 +4874,10 @@ def CMDupload(parser, args):
|
|
|
To unset run:
|
|
|
git config --unset branch.branch_name.skip-deps-uploads
|
|
|
Can also set the above globally by using the --global flag.
|
|
|
+
|
|
|
+ If the name of the checked out branch starts with "bug-" or "fix-" followed by
|
|
|
+ a bug number, this bug number is automatically populated in the CL
|
|
|
+ description.
|
|
|
"""
|
|
|
parser.add_option('--bypass-hooks', action='store_true', dest='bypass_hooks',
|
|
|
help='bypass upload presubmit hook')
|