Настройте P4merge как средство SVN diff в OSX

Я хочу использовать P4merge в качестве внешнего инструмента сравнения для файлов в SVN при сравнении локального с неизменным. Я просто потратил несколько часов на это, когда я должен был кодировать.

Что мне нужно делать на платформе OSX?

Ответ 1

Это хакка и заменяет инструмент diff, а не инструмент слияния, но здесь он идет:

Создайте python script с именем p4merge-diff-cmd:

#!/usr/bin/env python

import sys
import os.path

P4MERGE = '/Applications/p4merge.app/Contents/Resources/launchp4merge'

p4merge_args= [P4MERGE]
for arg in sys.argv[1:]:
  if os.path.exists(arg):
    p4merge_args.append(os.path.abspath(arg))

os.execv(P4MERGE, p4merge_args)

и сделать его выполнимым

chmod a+x p4merge-diff-cmd

Затем в файле ~/.subversion/config измените строку

# diff-cmd = diff_program (diff, gdiff, etc.)

к

diff-cmd = /full/path/to/p4merge-diff-cmd

Теперь svn diff <file> должен запустить p4merge.