2010-02-05 3 views
5

Мне бы хотелось увидеть визуальный разброс разветвленного файла. Так что я делаю этоPerforce визуальный diff разветвленного файла (p4 diff2 с внешней diff)

 
p4 diff2 -b branchname main.cpp 

Одна проблема ... это не визуальный и внешний diff не поддерживается. http://www.perforce.com/perforce/doc.current/manuals/cmdref/diff2.html

 
p4 diff2 does not use the diff program specified by the environment variable P4DIFF. 
The diff algorithm used by p4 diff2 runs on the machine hosting the Perforce server, 
and always uses the server's built-in diff routine. 

Я хочу, чтобы мой визуальный диф. Как мне это получить?

ответ

5

Может быть, проще всего сделать разницу с P4V?

Помимо этого, вам может потребоваться указать p4 print два файла на некоторые локальные временные файлы, а затем запустить diff на них?

0

Вы должны дать Kdiff3 попытку, если вы не используете его уже.

Для вашего сценария, я хотел бы сделать это (от старой школы P4Win):

  • перейти к первому файлу -> правой кнопкой мыши -> исследовать. Это открывает файл в проводнике. Щелкните правой кнопкой мыши -> Kdiff3 -> Сохранить [имя файла] для более поздней версии
  • перейти ко второму файлу -> щелкнуть правой кнопкой мыши -> исследовать -> файл правой кнопкой мыши -> Kdiff3 -> Compare With -> [first file]

Ta-da!

Я предполагаю, что ваш локальный репозиторий содержит оба файла. Я также предполагаю, что вы используете Windows, но это может быть адаптировано к другим ОС, так как Kdiff3 является многоплатформенным.

0

Возможно, вы сможете снять это. Perforce blog имеет запись при вызове задач p4v из командной строки.
Я мог только заставить команду diffdialog работать над одним файлом, но, может быть, если вы поиграете с ней, вы можете что-то выяснить.

0

Использование p4 diff.

из http://www.perforce.com/perforce/doc.021/manuals/cmdref/diff2.html:
«p4 diff2 не использует программу просмотра различий, указанный в переменной окружения P4DIFF Алгоритм дифф используется p4 diff2 работает на компьютере, на котором размещается сервер Perforce, и всегда использует сервер встроенный в дифф. рутина «.

Смежные вопросы