Как заставить git отображать изменения в vim, как это делает hg со скриптом hgeditor? - PullRequest
5 голосов
/ 24 января 2011

Интересной особенностью Mercurial является возможность просмотра изменений, которые будут зафиксированы в разделении vim (см. DiffsInCommitMessageInVIM ).

Есть ли какие-либо подсказки о том, как это сделать с помощью git?

Ответы [ 5 ]

8 голосов
/ 24 января 2011

Если у вас включен синтаксис, Vim обнаруживает сообщения git commit как тип файла. Это должно быть очевидно из выделения. Гораздо менее очевидная часть состоит в том, что он также имеет плагин filetype для коммитов git (и других вещей git). Убедитесь, что они включены (filetype plugin on), и тогда будет определена полезная команда: DiffGitCached. Просто запустите его, и он добавит diff в окно предварительного просмотра.

Комментарий рядом с определением этой команды в плагине:

Автоматически дифференцировать можно с помощью:

autocmd FileType gitcommit DiffGitCached | wincmd p

Плагины файловых типов хранятся в /vimXX/ftplugin/git*.vim, например, /usr/share/vim/vim70/ftplugin/gitcommit.vim, если вам интересно посмотреть!

2 голосов
/ 17 мая 2011

Я изменил скрипт HGEDITOR.SH для поддержки Git, вы можете клонировать его здесь:

git clone git://github.com/dharrigan/giteditor.git

Наслаждайтесь!

1 голос
/ 18 мая 2011

Я настоятельно рекомендую плагин tpopes vim-fugitive для работы с git.

Вы можете найти его здесь

0 голосов
/ 11 октября 2017

Если вы используете git 2.9 и выше, вы можете получить это поведение, запустив git config --global commit.verbose true.

Источник: этот ответ .

0 голосов
/ 14 июня 2012

Я использую git.vim Пьера Хабузита с www.vim.org. Перетащите его в ~ / .vim / ftplugin, и все будет готово (при условии обычного filetype plugin indent on в вашем ~ / .vimrc).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...