Убедитесь, что вы создаете разность с p4 diff -du
, чтобы получить унифицированный формат diff , который намного лучше работает с такими инструментами, как patch
, иявляется (я считаю) единственным форматом, который понимает Git.
Вам также может понадобиться отредактировать патч, чтобы исключить синтаксис Perforce;как видите, имя файла выглядит как //depot/a.c#162
, что patch
и git apply
могут интерпретировать как фактическое имя файла;a.c#162
.Попробуйте удалить часть #162
, если она появляется в вашем патче.
И в зависимости от того, где именно вы применяете патч, вам может потребоваться передать -p1
в patch
или git apply
, чтобы удалитьот ведущего /
или -p2
, чтобы удалить весь начальный каталог.