Заметки по VCS darcs

url: http://www.darcs.net <br/><br/>Внешний diff:<br/>Чтобы для слияния файлов использовалась внешняя программа, нужно создать файл <br/> _darcs\prefs\defaults <br/>и в него вставить строку <br/> <br/> ALL external-merge C:\Progra~1\KDiff3\kdiff3 --output %o %a %1 %2 <br/> (для kdiff3) <br/><br/> %o - выходной файл (с разрешенным конфликтом) <br/> %1 и %2 - конфликтующие версии <br/> %a - общий предок конфликтующих версий <br/> <br/><br/>При использовании этого метода kdiff3 будет запущен во время выполенения pull. Непонятно, можно ли запустить процесс внешнего разрешения конфликта, когда ...
17 ноября 2005, четверг 11:14
seb для раздела Блоги
url: http://www.darcs.net

Внешний diff:
Чтобы для слияния файлов использовалась внешняя программа, нужно создать файл
    _darcs\prefs\defaults

и в него вставить строку


ALL external-merge C:\Progra~1\KDiff3\kdiff3 --output %o %a %1 %2
(для kdiff3)

%o - выходной файл (с разрешенным конфликтом)
%1 и %2 - конфликтующие версии
%a - общий предок конфликтующих версий


При использовании этого метода kdiff3 будет запущен во время выполенения pull. Непонятно, можно ли запустить процесс внешнего разрешения конфликта, когда конфликт уже в рабочей копии?

Если конфликт есть, а маркеров конфликта нет, то можно применить
darcs resolve - однако все не записанные изменения будут удалены

Восстановление удаленных из репозитория папок.
Исходная ситуация: из репозитория была удалена папка DocsProgrammer с
помощью darcs remove.
Восстановление: посмотрел с помощью darcs annotate DocsProgrammer патч,
в котором была удалена эта папка.
В _darcs\pathches нашел этот патч, зашел в него по F4 в фаре, нашел строку
rmdir DocsProgrammer и удалил эту строку. Потом создал эту папку в репозитории
и в _darcs\current. Если все прошло успешно, то darcs check должен выдать
Repo is consistent!

Вывод русских символов
Для того, чтобы даркс не эскейпил символы, не входящие в первую половину ASCII-таблицы нужно определить переменную
set DARCS_DONT_ESCAPE_ISPRINT=1