Простой способ использовать VIM для конфликта SVN? - PullRequest
2 голосов
/ 29 июня 2010

Я только что столкнулся с конфликтом во время работы в SVN, и мне не хватает функциональности в Mercurial. В Mercurial я установил vim -d в качестве инструмента сравнения. Мне интересно, есть ли способ заставить SVN работать аналогичным образом? Что-то вроде:

$ svn resolve whatever.py 

Что вызовет vim (в режиме diff), позволит мне исправить файл, а затем выполнить svn resolved для очистки. Я работаю исключительно в CLI (в основном над SSH), поэтому графические инструменты сравнения не нужны.

Существует ли такая вещь?

Обновление:
Вероятно, стоит указать, где я нахожусь в процессе. Я отредактировал файл (whatever.py), сохранил его и сделал svn update, где кто-то еще также изменил файл. Так что мой svn stat выглядит так:

?      whatever.py.mine
?      whatever.py.r7822
?      whatever.py.r7908
C      whatever.py

Ответы [ 4 ]

4 голосов
/ 17 декабря 2010

установить vim в качестве инструмента сравнения для Tortoise, для win32 (работа для меня):

1) Turtoise SVN-> Настройки-> Внешние программы-> Дифф. Инструмент

setВнешний C: \ Programs \ gVim \ vim73 \ gvim.exe -d

set Внешний C: \ Programs \ gVim \ vim73 \ gvim.exe -d

2) унифицированный diffСредство просмотра

C: \ Programs \ gVim \ vim73 \ gvim.exe

3) Инструмент объединения

"C: \ Programs \gVim \ vim73 \ gvim.exe "-f -d -c" wincmd J "-c" изменить размер на 22%, объединены в%,% в%,% base

3 голосов
/ 29 июня 2010

Всякий раз, когда у меня возникает конфликт с svn update, меня просят полдюжины вариантов, один из которых - редактировать рассматриваемый файл.Возможно, вам нужна более новая версия Subversion.Я бегу 1.6.9.

1 голос
/ 29 июня 2010

Попробуйте установить переменные окружения EDITOR или VISUAL в vim

1 голос
/ 29 июня 2010

В более поздних версиях CLI-клиента Subversion вы можете установить переменную среды SVN_MERGE=vim -d, а затем выбрать l для запуска внешнего инструмента при появлении конфликтного меню во время обновления svn.

Я не уверен на 100%, соответствует ли порядок параметров, передаваемый svn, тому, который требуется для vim -d, поэтому вам, возможно, придется написать скрипт-обертку вместо прямого вызова vim.

В руководстве svn, конечно, есть полная информация.

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