-2

所以,我尝试使用命令修补我当前的分支

patch -p RETURN quote-patch.txt

但是,我不知道应该在 -p 选项之后输入什么数字。我尝试输入几个数字(0,1,2,3,4),但它返回此错误:

patching file RETURN
Hunk #1 FAILED at 74.
Hunk #2 FAILED at 84.
Hunk #3 FAILED at 95.
Hunk #4 FAILED at 107.
Hunk #5 FAILED at 139.
Hunk #6 FAILED at 187.
6 out of 6 hunks FAILED -- saving rejects to file RETURN.rej

任何的想法?谢谢

4

1 回答 1

4

您的补丁不适用于您当前的工作集。

没有更多信息,我不能说为什么会这样。也许您RETURN在尝试补丁应用程序之前进行了本地更改。正如消息所暗示的那样,尝试查看RETURN.rej(及其RETURN本身)以修复后果。

使用patch命令行实用程序时,您应该使用一个-p数字,使补丁中的路径与您的工作集中的路径匹配:如果补丁头显示+++ lib/foo/RETURN,并且您当前的工作目录foo/RETURN在其中,那就是这种情况为-p1.

但是,由于您已将此问题标记为“git”,因此我将假设您在 git 存储库中。使用 git 时,您不应该使用该patch工具:相反,要么自然地推拉更改,要么使用git format-patchandgit am发送和接收更改集。这将保留权限、提交消息、作者信息等。diff如果您使用直线然后应用更改,所有这些额外的元数据都将丢失patch

于 2013-01-29T20:53:48.063 回答