git-p4 submit не работает, патч не применяется

Когда я делаю следующее:

$ git-p4 submit

Я получаю следующую ошибку:

error: patch failed: foo/bar/blah.h:1
error: foo/bar/blah.h: patch does not apply
Unfortunately applying the change failed!
What do you want to do?
[s]kip this patch / [a]pply the patch forcibly and with .rej files / [w]rite the patch to a file (patch.txt) 

Как я могу выйти из этой ситуации и сделать успешную подачу?

Кстати, наш сервер P4 настроен на использование расширения ключевых слов (filetype = text+k), а в строке 3 файла проблемы есть расширенное ключевое слово. Я сделал изменение в строке 1.

Я попытался удалить дельту в строке 1, но ошибка повторяется, когда я повторяю команду git-p4.

2 ответа

Решение

Разобрался сразу после публикации этого вопроса.

Хитрость заключалась в том, чтобы за спиной P4 убрать расширение ключевых слов.

chmod +w foo/bar/blah.h
edit foo/bar/blah.h #change $File: //depot/foo/bar/blah.h$ to $File$
chmod -w foo/bar/blah.h
git-p4 submit

Это сработало.

Это меня тоже укусило. Другой вариант - изменить тип файла с помощью инструмента с графическим интерфейсом или командной строки, чтобы он больше не text+k или же text+ko тип файла (поэтому расширение не происходит). Если вы это сделаете, он будет совершать ОК.

Другие вопросы по тегам