7

当我执行以下操作时:

$ 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) 

我如何才能从这种情况中恢复并成功提交?

FWIW,我们的 P4 服务器配置为使用关键字扩展(文件类型 = text+k),并且在问题文件的第 3 行有一个扩展关键字。我在第 1 行进行了更改。

我尝试在第 1 行删除增量,但是当我重试 git-p4 提交时错误仍然存​​在。

4

2 回答 2

6

刚刚发布这个问题后想通了。

诀窍是在 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

这行得通。

于 2012-01-28T04:38:44.600 回答
1

这也咬了我一口。另一种选择是通过 GUI 工具或命令行更改文件类型,使其不再是text+ktext+ko文件类型(因此不会发生扩展)。如果你这样做,它将提交确定。

于 2013-02-06T19:44:47.443 回答