如何从命令行创建拉取请求?

Kon*_*ten 2 git command-line-interface pull-request

当我完成我的工作时,我将更改添加、提交并推送到由当前分支跟踪的远程分支。所以命令如下。

结帐驴
添加。
提交--消息
推送

现在,我想创建一个拉取请求。如果我请求从本地驴或远程驴拉拉,对我来说并不重要。我可以使用 GUI 来做到这一点,但在我看来,使用 CLI 执行该操作更像是一个老板。

根据这篇文章,我应该运行这样的东西。

git request-pull 驴远程/驴

也许

git request-pull remote/donkey remote/dev

然而,在尝试了几种不同的组合后,我失败了,只得到了一系列错误,暗示命令是正确的,但参数没有意义。

奇怪的是,在谷歌搜索时创建拉取请求并不多,可能会淹没在使用 GUI 的信息中。

Nou*_*non 12

我将把 @Maroun 的评论提取到答案中以提高可见性。GitHub 有一个正式发布的解决方案,用于从命令行创建拉取请求:GitHub CLI

我的使用方法是创建一个个人访问令牌并将其gh auth传递给我公司的 GitHub Enterprise 站点,然后创建 PR:

gh auth login --hostname github.my_company.com --with-token < my_token.txt
gh pr create --title "Pull request title" --body "Pull request body"
Run Code Online (Sandbox Code Playgroud)

  • 遗憾的是,我的大部分项目都是由 BitBucket 管理的,因此不可知的 Git 解决方案将是最好的。尽管如此,我还是支持你将其作为答案发布的决定。 (2认同)

tor*_*rek 7

拉请求是一个事情,GitHub上,或者到位桶,或其他一些网络托管服务,提供。它不是 Git 本身的一部分。

git request-pull命令生成电子邮件消息。如果电子邮件消息是您的托管服务提供商为您提供的(或一种)机制来提出拉取请求,这可能会奏效。但是,GitHub 和 Bitbucket 以及其他提供商使用的实际机制不是基于电子邮件的,因此这没有任何好处。

Kevin Siahaan 的回答自我开始输入后已删除)提供了一些 CLI 工具的链接,用于在不使用浏览器的情况下操作 GitHub。这增加了一组额外的命令,不是 Git 本身的一部分,但可以通过git前端使用。 Maroun 的评论包含指向另一个特定于 GitHub 的 CLI 的链接。但这仅适用于GitHub。您正在使用 Bitbucket。

有关一些额外的 Bitbucket 特定链接,请参阅ElpieKay 的评论

请注意,如果您使用自己喜欢的任何语言编写自己的工具;因为Python可能是一个很好的requests使得它很容易调用REST服务器操作,虽然围棋也是包装材料连续漂亮的操作,您可以将您的可执行映像的任何地方$PATH,将其命名(例如)git-xyzzy,并调用它作为git xyzzy. 像这样扩展 Git 有一些小的限制:特别是git help xyzzy通常不会工作,除非您以系统提供手册页文档的任何方式安装了手册页文档。但它用于编写新的自定义命令非常有用。