Получение кода выхода 255 при попытке запуска diffmerge из SVN - PullRequest
2 голосов
/ 22 февраля 2012

Я пытаюсь интегрировать DiffMerge с svn (версия 1.6.16) на снежном барсе, следуя инструкциям, указанным здесь .Я внес следующие изменения:

1) Создал скрипт, который выглядит следующим образом:


#!/bin/bash
DIFFMERGE_PATH=/Applications/DiffMerge/DiffMerge.app
DIFFMERGE_EXEC=${DIFFMERGE_PATH}/Contents/MacOS/DiffMerge
${DIFFMERGE_EXEC} --nosplash -m -t1="Incoming"  -t2="Original" -t3="Current" -r="$4" "$2" "$1" "$3"

2) Ran chmod +x ~/Scripts/diffmerge-svnmerge.sh

3) Добавил следующую команду в ~/.subversion/config file:

merge-tool-cmd = <HOME>/Scripts/diffmerge-svnmerge.sh

4) В целях тестирования я постарался получить конфликт при попытке обновить файл и использовал опцию 'l' для запуска DiffMerge для разрешения конфликта,Каждый раз я получаю следующее сообщение об ошибке: The external merge tool exited with exit code 255

Есть идеи, что я делаю не так?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 09 июля 2012

Это сработало для меня (Subversion 1.7.5)

#!/bin/bash
DIFFMERGE_PATH=/Applications/DiffMerge.app
DIFFMERGE_EXEC=${DIFFMERGE_PATH}/Contents/MacOS/DiffMerge
DIFFMERGE_ARGS=()
COLCOUNT=1
for I in "$@"; do
    case "${I}" in
        "-E")
            ;;
        "-L")
            DIFFMERGE_ARGS[${#DIFFMERGE_ARGS[*]}]="-t${COLCOUNT}"
            COLCOUNT=$((${COLCOUNT}+1))
            ;;
        *)
            DIFFMERGE_ARGS[${#DIFFMERGE_ARGS[*]}]="${I}"
            ;;
    esac
    echo "Arg: ${I}" >> /Users/kosh/tmp/diffmerge.cmd
done
${DIFFMERGE_EXEC} --nosplash "${DIFFMERGE_ARGS[@]}"
exit ${?}
0 голосов
/ 22 октября 2018

код выхода 255, кажется, происходит, когда путь не найден. Для меня это также произошло при использовании ~ / (тильды) path к моему внешнему инструменту сравнения. Я использую IntelliJ's idea merge

...