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
тип файла (поэтому расширение не происходит). Если вы это сделаете, он будет совершать ОК.