Каков наилучший способ использовать «git add -p» в emacs на Windows? - PullRequest
3 голосов
/ 16 марта 2012

Проблема:

  1. git add -p кажется непригодным для emacs shell или eshell
  2. magit (часто предлагаемая альтернатива использованию git из оболочки в emacs) сосет шары в Windows (это ужасно медленно.)
  3. Если оставить окно Cygwin открытым и использовать его для git add -p, а затем переходить туда-сюда между ним и emacs, то это выполнимо, но это немного раздражает.

Есть ли способ, что под Microsoft Windows я могу заставить git add -p хорошо работать в оболочке или eshell или, в качестве альтернативы, magit, чтобы быть несколько пригодным для использования?

Ответы [ 2 ]

1 голос
/ 18 апреля 2013

Вы пробовали:

% EDITOR=emacsclient git add -e <files>

и затем с помощью команд diff-mode в ваших запущенных emacs для интерактивного редактирования фрагментов патча?

Тогда вы сможете разделитьфрагменты в патче в любой конкретной строке с diff-split-hunk и полное удаление фрагментов с помощью diff-hunk-kill (и, конечно, эти команды привязаны к более коротким последовательностям клавиш для быстрого интерактивного использования).Когда вы закончите редактирование патча, используйте C-x #, чтобы сохранить его и выйти из сеанса emacsclient (чтобы вы могли вернуться к своей оболочке).

(emacsclient, если вы не знакомы с ним,программа, которая позволит вам открывать файлы в уже работающем emacs, если последний запускает сервер для подключения к emacsclient; см. M-x describe-function server-start)

Обратите внимание, что вы, вероятно, захотитенастроить, как emacsclient взаимодействует с git;например, посмотрите эти ответы: Использование ediff в качестве git mergetool и Как установить состояние выхода для emacsclient .

1 голос
/ 17 марта 2012

Если magit работает медленно, это, вероятно, указывает на проблемы с вашим git-клиентом для Windows?

Я бы рассмотрел это в первую очередь (поскольку git add -p действительно не держит свечу для интерфейса magit, IMO).

Какими точными инструментами (и их версиями) вы пользуетесь?

Вам обязательно следует проверить систему отслеживания проблем с магнитами, чтобы узнать, есть ли известные причины, по которым магнит может работать медленно.1008 *

...