处理GitLab合并请求的工具集合,具有阿尔卑斯风格。
mkmr的Python项目详细描述
mkmr公司
在GitLab上创建合并请求的小python3实用程序,特别支持alpinelinux的自托管实例。在
安装
除非您需要绝对最新的版本立即请使用系统包。在
这个包可以在alpinelinux的社区repo中找到
If you packaged it for your distro please tell me so I can add it
# apk add mkmr
设置
需要在正在使用的存储库中设置以下内容:
- 远程名为
origin
(或使用--origin=ORIGIN
),URL 必须指向您想要贡献的项目分支。在 - 远程名为
upstream
(或使用--upstream=UPSTREAM
),URL 必须指向您要贡献的项目的规范存储库。在
示例:
^{pr2}$请注意,fetch URL将用于所有交互,实际上只支持https://而其他ssh URL类型(如ssh://和git://将被静默转换为https://。在
- (首次用户)使用
--token=TOKEN
调用脚本,它将自动写入配置中,在以后的使用中不再需要。在
简单用法和常见示例
完成设置后,可以使用以下工具轻松运行mkmr:
$ mkmr
它将自动创建从活动分支到主分支的合并请求。在
不同的源和目标分支
有时您希望创建一个以另一个分支为目标的合并请求,有时您希望另一个分支作为合并请求中更改的源,有时您希望两者都是。在
对于那些使用--source=SOURCE
和--target=TARGET
开关的用户,如下所示:
$ mkmr --target=dev $ mkmr --source=foo $ mkmr --source=foo --target=bar
处理标题、描述和标签
mkmr将自动从合并请求的提交中派生标题和描述,如果有多个提交,则会提示您选择一个。在
如果您使用的是alpinelinux的GitLab实例,那么它还会为您的合并请求派生相关的标签。在
如果希望传递您自己的标题和描述,请使用--title=TITLE
和{
$ mkmr --title="This is an amazing merge request" $ mkmr --title="Not amazing merge request" --description="sike!"
使用--edit
或{
如果要向合并请求添加标签,请使用--labels=LABELS
,标签应该用逗号隔开,如下所示:
$ mkmr --labels=help-wanted,good-first-issue
切换到新的个人访问令牌
最终你想轮换你的个人访问令牌,在这种情况下,你可以
组合--token=TOKEN
和--overwrite
选项。后一种方式的使用
配置文件的private_token
将被覆盖。在
$ cat $XDG_CONFIG_HOME/mkmr/config[gitlab.alpinelinux.org]url=https://gitlab.alpinelinux.orgprivate_token=BAR
$ mkmr --token=FOO --overwrite$ cat $XDG_CONFIG_HOME/mkmr/config[gitlab.alpinelinux.org]url=https://gitlab.alpinelinux.orgprivate_token=FOO
配置
mkmr使用INI格式的文件的方式与pythongitlab相同,实际上mkmr只编写一个节(比如[gitlab.alpinelinux.org]
),并在其中写入带有相关值的private_token
和{
编写完成后,配置文件将传递给pythongitlab,它用于与gitlab API交互。在
将搜索以下位置(如果不存在这些位置,将自动创建第一个位置):
- $XDG_CONFIG_HOME/mkmr/CONFIG(仅当设置了XDG_CONFIG_HOME时)
- $HOME/.config/mkmr/config(如果没有设置XDG_config_HOME,但HOME已设置)
--config开关可用于传递配置文件的完整路径,如下所示:
$ mkmr --config=/tmp/config
- 项目
标签: