发送GitHub拉取请求的命令行工具
项目描述
git-pull-request是一个命令行工具,可以从您的终端发送GitHub或Pagure的拉取请求。
安装
使用标准的Python安装方法
pip3 install git-pull-request
尽管它可能不如GitHub上最新的代码更新,但Fedora 28+的用户也可以通过软件包管理器DNF直接下载。
sudo dnf install git-pull-request
使用方法
一旦您将提交合并到分支中,只需输入
git pull-request
这将
如果需要,将上游仓库分叉到您的账户中
如果需要,将您的分叉仓库添加为名为“github”的远程仓库
将您的当前分支强制推送到远程仓库
为您的当前分支创建一个匹配远程仓库分支或默认的master分支的拉取请求。
如果您稍后向您的分支添加更多提交,或需要重新基以编辑提交,您只需运行git pull-request来更新您的拉取请求。git-pull-request会自动检测为您的当前工作分支打开了拉取请求。
工作流程建议
缓存凭据
GitHub 提供了关于使用 git凭据 的良好文档。
完整文档可在 git-scm.com 网站上找到。
GitHub
如果您为 GitHub 账户设置了双因素认证,您应该 创建一个个人访问令牌 并请求 repo 权限,然后使用它作为密码。
Pagure 令牌
Pagure 使用 API 密钥,您需要通过访问 您的设置 并请求 叉取项目 和 修改现有项目 ACL 来创建一个。
创建分支
发送拉取请求时,最好从您自己的分支进行。您可以通过以下方式从 master 创建自己的分支:
$ git checkout -b myownbranch --track origin/master
这将检出名为 myownbranch 的新分支,它是 master 的副本。使用 –track 选项确保上游源分支已写入您的 .git/config 文件。这将允许 git-pull-request 知道要将拉取请求发送到哪个分支。
由于这比较长,您可以使用 git 的别名来使其更快。
$ git config --global alias.nb '!git checkout --track $(git config branch.$(git rev-parse --abbrev-ref HEAD).remote)/$(git rev-parse --abbrev-ref HEAD) -b'
这将创建一个 git nb 别名,它将创建一个跟踪当前分支并检出它的新分支。然后您可以使用它如下:
$ git nb foobar Branch foobar set up to track remote branch master from origin. Switched to a new branch 'foobar'
通过 git config 进行配置
大多数 git-pull-request 命令行参数都可以存储到您的 git 配置中。
对于特定的仓库,如果您厌倦了使用
$ git pull-request --fork never
您可以使用 git 设置选项并使用不带任何参数的命令
$ git config git-pull-request.fork never $ git pull-request
您也可以全局设置选项,为所有仓库设置自定义默认值
$ git config --global git-pull-request.fork always $ git pull-request
与 hub 的区别
包装程序 hub 提供了 hub fork 和 hub pull-request 作为命令行工具,用于叉取和创建拉取请求。
不幸的是,很难将这些工具组合在一个完整的自动化实现中。
例如:如果您需要更新您的拉取请求,没有方法可以识别现有拉取请求,因此调用 hub pull-request 只会打开一个新的拉取请求。
git-pull-request 将所有这些操作封装在一个方便的工具中。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
构建发行版
git-pull-request-6.0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e0c8fd5122a6783e9a92660cd43b94a933d6aadebfd1bb07d276fc60c1013973 |
|
MD5 | d9289016fe573547e2c6ec5135241be1 |
|
BLAKE2b-256 | 4f09cbf25eee09ab6448bf66186582ee7413c958a4d115fcf1287bb9c8781aba |
git_pull_request-6.0.2-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 10ddf275f1904223a656fcfdf8a4afd013247b4953be122fee289a87c1e417f6 |
|
MD5 | f27bfaf3275acdbcbd8205fe2c91c44a |
|
BLAKE2b-256 | 67ba5058fd0ffd498ff729c90e47e5604c638fe5b421fd5c7cdc4fd992dae73e |