在Windows上的emacs中使用“git add -p”的最佳方法是什么?

时间:2012-03-16 18:11:39

标签: windows git emacs magit

问题:

  1. git add -p似乎无法用于emacs shelleshell
  2. magit(在emacs中使用git的常用替代方法)在Windows上吸球(它的速度非常慢。)
  3. 保持cygwin窗口打开并将其用于git add -p,然后在它和emacs之间来回切换是可行的,但不仅有点烦人。
  4. 有没有办法在Microsoft Windows下我可以让git add -p在shell或eshell中运行良好,或者让magit有点可用?

2 个答案:

答案 0 :(得分:1)

如果magit很慢,那可能表明你的windows git客户端有问题吗?

我首先要研究一下(因为git add -p真的不会对魔法师的界面,IMO产生影响。

您使用的确切工具(及其版本)是什么?

你一定要检查magit问题跟踪器,看看是否有已知的原因可能导致magit速度变慢。

答案 1 :(得分:1)

你试过了吗?

% EDITOR=emacsclient git add -e <files>

然后在运行的emacs中使用diff-mode命令以交互方式编辑补丁的深度?

然后,您将能够在diff-split-hunk的任何特定行中拆分补丁,并使用diff-hunk-kill完全删除黑客(当然,这些命令绑定到较短的键序列,以便快速交互使用)。编辑补丁后,使用C-x #保存并退出emacsclient会话(以便您可以返回shell)。

(emacsclient,如果您不熟悉它,是一个程序,可以让您在已经运行的emacs中打开文件,只要后者启动服务器以便emacsclient连接;请参阅{{ 1}})

请注意,您可能希望自定义emacsclient与git的交互方式;例如,请参阅以下答案:Using ediff as git mergetoolHow to set the exit status for emacsclient