大多数为 emacs 开发的 Magit/github 扩展,用于拉取请求
解决方案
最终我将在 Magit 中实现这些东西(我是维护者),但我首先必须发布一个版本。
不幸的是,目前还没有第三方扩展可以填补这个角色。 magithub
现在已经坏了很长时间了。 magit-gh-pulls
(作者:Yann,我的前任 Magit 维护者)也没有与 Magit 的变化保持同步。前一段时间我试图修复它,但当我发现这样做会导致完全重写时就放弃了。 gh.el
也是由 Yann 编写并由 magit-gh-pulls
. 。我过去曾为它做出过贡献,但最终停止使用它,因为 (a) 它使用 url.el
结果证明这是非常不可靠的(b)它过于复杂。
所以我担心目前没有一个包可以满足您的需求。如果你想自己写,我建议你使用 request.el
然后仅实现您实际需要的 Github api 部分,以避免过度设计。
编辑:截至 2015 年 10 月 magit-gh-pulls
是 保持 再次,但不再是官方扩展。我个人不使用它,因为我认为它应该或多或少。我目前使用“较少”的形式 magit-branch-pull-request
来自 magit-rockstar
图书馆。尽管我维护该库,但我并不认为它是官方扩展 - 它是按原样提供的。该功能非常基本,您给它一个问题编号,它会为您创建一个分支,仅此而已。
2016年9月编辑:我已经写了 ghub.el
和 glab.el
作为替代品 gh.el
. 。它们主要供我个人使用并提供 非常 很少,基本上它们给你的功能如下 ghub-get (resource &optional params data noerror)
, ,然后你必须查看相应的 api 文档来弄清楚什么 resource
, params
, , 和 data
你必须使用。此外,错误处理也不是很好,目前使用的是 url.el
. 。我打算最终通过使用来改进两者 libcurl
在支持 ffi 的 Emacs 发布一段时间后。
其他提示
您可以通过设置获得简单的“手动”Github 支持 magit-git-executable
到 "hub"
. 。然后你就可以使用所有 hub
命令和功能通过 magit-git-command
(势必 :
在 Magit 缓冲区中)。这至少可以让你通过 Emacs/Magit 与 Github 交互。
尽管请注意,截至撰写本文时,这将不起作用,因为发布版本 hub
不认识 --literal-pathspecs
选项 ,Magit 使用该选项(看这里)。因此,在下一个版本发布之前,您需要从最新源安装 hub: https://github.com/github/hub#source