mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
upload: add support for setting hashtags
This allows users to specify custom hashtags when uploading, both via the CLI and via the same gitconfig settings as other upload options. Bug: https://crbug.com/gerrit/11174 Change-Id: Ia0959e25b463e5f29d704e4d06e0de793d4fc77c Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/255855 Reviewed-by: David Pursehouse <dpursehouse@collab.net> Tested-by: Mike Frysinger <vapier@google.com>
This commit is contained in:
parent
72ebf19e52
commit
84685ba187
@ -172,6 +172,7 @@ The `[branch]` settings are updated by `repo start` and `git branch`.
|
||||
| review.\<url\>.autocopy | upload | Automatically add to `--cc=<value>` |
|
||||
| review.\<url\>.autoreviewer | upload | Automatically add to `--reviewers=<value>` |
|
||||
| review.\<url\>.autoupload | upload | Automatically answer "yes" or "no" to all prompts |
|
||||
| review.\<url\>.uploadhashtags | upload | Automatically add to `--hashtags=<value>` |
|
||||
| review.\<url\>.uploadtopic | upload | Default [topic] to use |
|
||||
| review.\<url\>.username | upload | Override username with `ssh://` review URIs |
|
||||
| remote.\<remote\>.fetch | sync | Set of refs to fetch |
|
||||
|
@ -199,6 +199,7 @@ class ReviewableBranch(object):
|
||||
|
||||
def UploadForReview(self, people,
|
||||
auto_topic=False,
|
||||
hashtags=(),
|
||||
draft=False,
|
||||
private=False,
|
||||
notify=None,
|
||||
@ -209,6 +210,7 @@ class ReviewableBranch(object):
|
||||
self.project.UploadForReview(self.name,
|
||||
people,
|
||||
auto_topic=auto_topic,
|
||||
hashtags=hashtags,
|
||||
draft=draft,
|
||||
private=private,
|
||||
notify=notify,
|
||||
@ -1331,6 +1333,7 @@ class Project(object):
|
||||
def UploadForReview(self, branch=None,
|
||||
people=([], []),
|
||||
auto_topic=False,
|
||||
hashtags=(),
|
||||
draft=False,
|
||||
private=False,
|
||||
notify=None,
|
||||
@ -1388,6 +1391,7 @@ class Project(object):
|
||||
opts = []
|
||||
if auto_topic:
|
||||
opts += ['topic=' + branch.name]
|
||||
opts += ['t=%s' % p for p in hashtags]
|
||||
|
||||
opts += ['r=%s' % p for p in people[0]]
|
||||
opts += ['cc=%s' % p for p in people[1]]
|
||||
|
@ -130,6 +130,12 @@ is set to "true" then repo will assume you always want the equivalent
|
||||
of the -t option to the repo command. If unset or set to "false" then
|
||||
repo will make use of only the command line option.
|
||||
|
||||
review.URL.uploadhashtags:
|
||||
|
||||
To add hashtags whenever uploading a commit, you can set a per-project
|
||||
or global Git option to do so. The value of review.URL.uploadhashtags
|
||||
will be used as comma delimited hashtags like the --hashtags option.
|
||||
|
||||
# References
|
||||
|
||||
Gerrit Code Review: https://www.gerritcodereview.com/
|
||||
@ -140,6 +146,9 @@ Gerrit Code Review: https://www.gerritcodereview.com/
|
||||
p.add_option('-t',
|
||||
dest='auto_topic', action='store_true',
|
||||
help='Send local branch name to Gerrit Code Review')
|
||||
p.add_option('--hashtag', '--ht',
|
||||
dest='hashtags', action='append', default=[],
|
||||
help='Add hashtags (comma delimited) to the review.')
|
||||
p.add_option('--re', '--reviewers',
|
||||
type='string', action='append', dest='reviewers',
|
||||
help='Request reviews from these people.')
|
||||
@ -384,6 +393,20 @@ Gerrit Code Review: https://www.gerritcodereview.com/
|
||||
key = 'review.%s.uploadtopic' % branch.project.remote.review
|
||||
opt.auto_topic = branch.project.config.GetBoolean(key)
|
||||
|
||||
# Check if hashtags should be included.
|
||||
def _ExpandHashtag(value):
|
||||
"""Split |value| up into comma delimited tags."""
|
||||
if not value:
|
||||
return
|
||||
for tag in value.split(','):
|
||||
tag = tag.strip()
|
||||
if tag:
|
||||
yield tag
|
||||
key = 'review.%s.uploadhashtags' % branch.project.remote.review
|
||||
hashtags = set(_ExpandHashtag(branch.project.config.GetString(key)))
|
||||
for tag in opt.hashtags:
|
||||
hashtags.update(_ExpandHashtag(tag))
|
||||
|
||||
destination = opt.dest_branch or branch.project.dest_branch
|
||||
|
||||
# Make sure our local branch is not setup to track a different remote branch
|
||||
@ -401,6 +424,7 @@ Gerrit Code Review: https://www.gerritcodereview.com/
|
||||
|
||||
branch.UploadForReview(people,
|
||||
auto_topic=opt.auto_topic,
|
||||
hashtags=hashtags,
|
||||
draft=opt.draft,
|
||||
private=opt.private,
|
||||
notify=None if opt.notify else 'NONE',
|
||||
|
Loading…
Reference in New Issue
Block a user