问题:用于拉取请求的 emacs 的最开发的 magit/github 扩展

我对拉取请求、编辑问题并将它们绑定到提交以及我通常必须在命令行](https://github.com/github/hub)上使用[集线器的其他事情特别感兴趣。但是,我已经开始使用 magit 并且非常喜欢键绑定和通用界面——我也想在这部分中留在 emacs 中,而不是需要为拉取请求、问题等保持额外的外壳打开。

我能找到的可能为 magit 添加最多 github 功能的软件包是:

  • magithub

  • magit-gh-pulls

  • gh.el

任何可能参与这些项目的人都可以推荐他们如何比较以及将拉取请求集成到 magit 环境中的最佳方法是什么?

解答

最终我将在 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-rockstar库中magit-branch-pull-request形式的“less”。即使我维护该库,我也不认为它是官方扩展——它是按原样提供的。该功能非常基本,您给它一个问题编号,它会为您创建一个分支,就是这样。

** 2016 年 9 月编辑:** 我写了ghub.elglab.el作为gh.el的替代品。它们主要是供我个人使用的,提供的_非常_很少,基本上它们给你的功能是ghub-get (resource &optional params data noerror),然后你必须查看各自的api文档来弄清楚你必须使用什么resourceparamsdata。错误处理也不是很好,目前使用的是url.el。我打算在支持 ffi 的 Emacs 发布后的某个时间使用libcurl最终改进这两者。

** 2020 年 1 月编辑:** 一年多以前,我有发布了forge

Forge 允许您在舒适的 Magit 和 Emacs 的其余部分中使用 Git forge(例如 Github 和 Gitlab)。

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐