Попробуйте переиндексное .
ОБНОВЛЕНИЕ: Как указано в комментариях, это было в ответ на исходный вопрос.
Самый простой способ - использовать p4v или p4win, но это не то, о чем вы спрашивали.
Попробуйте следующее:
p4 opened -c 999 | awk 'BEGIN { FS = "#" } // { print "p4 diff " $1 }' | csh
Вы, конечно же, должны убедиться, что на пути к вспомогательной оболочке есть p4, и что $ P4CLIENT и т. Д. Все настроены.
Вышеизложенное отвечает на ваш вопрос, но если прочитать tile как diffing директории по списку изменений, то можно ответить следующим образом:
p4 filelog ... | awk '
BEGIN {FS="[ /]";tc=999}
/^\/\// {fn=$NF;o=1;if (system("test -w " fn)) h=0; else h=""}
/^\.\.\.\ \#/ {if (h==0) h=$2;
if ($4<=tc && o==1) {print "p4 diff -db -dw " fn h " " fn $2 " ;#" $4;o=0}}' \
| sh
This will diff all the files in the directory against the changelist 999 it uses the "have" version if it has been checked out otherwise it uses the latest version.
это было проверено с GNU Awk 3.1.3