Вот

, когда я переключаю ветки в git, если файлы открыты в emacs, тогда emacs спрашивает, хочу ли я вернуть их (так как они думают, что они изменились на диске), даже если их содержимое идентично.

Во-первых, я хотел бы найти способ для emacs вообще не спрашивать меня об этом, если содержимое на диске идентично содержимому в буфере.

Во-вторых, я хотел бы команду, которая вернула (без запроса) все мои открытые буферы, которые не имеют несохраненных изменений, и запросила меня о тех, которые имеют несохраненные изменения.

Кроме того, я был бы открыт для предложений о других решениях, способах работы и т.д., которые я мог бы попробовать. Я очень рад писать emacs-lisp, если люди могут дать мне указание, с чего начать.

PS Я использую Aquamacs на OSX, если это имеет значение.

Редактировать:

Ну, я обнаружил, что пакет revbuffs - это почти то, что мне нужно. Конечно, достаточно, чтобы я не пытался писать что-то новое сам. (Я сопоставил revbuffs с Cmd-R, который работает довольно хорошо. В некотором роде похож на Cmd-R в других приложениях Mac).

Режим глобального автоматического возврата был бы идеальным решением, и мне хотелось бы выбрать два ответа. Я предпочитаю revbuffs просто из-за, возможно, иррационального, чувства желания контролировать то, что происходит.

Я вроде бы предположил, что если бы я обращался к git из emacs, то, вероятно, это можно было бы обработать проще, но в настоящее время я предпочитаю доступ к git через командную строку. (Я не использую emacs достаточно долго, чтобы сделать его моей операционной системой). Я буду исследовать Magit немного более тщательно, хотя.

Edit2:

Я использую magit уже год и очень рекомендую его для работы с git из Emacs. Однако я все еще использую revbuffs всякий раз, когда делаю ребаз за пределами emacs.

Ответы на вопрос(3)

Ваш ответ на вопрос