"解决之前被篡改"意味着文件解析?

nik*_*ack 8 perforce

我正在尝试将main流合并到development流,并且需要解析一些文件.解决方法我有一个错误:

文件路径在解析之前被篡改 - 编辑或还原.

我试图像这里描述的那样解决它,但没有成功.这是verify命令告诉我的:

目标文件
路径 - 分支更改9070(文本)A3269695246A89D21F341D8A5BB70B5B

for source
filepath - edit change 22793(text)171BA2F3E0FFCEF3F7A34FDB7A2CEF69
filepath - add change 9049(text)A3269695246A89D21F341D8A5BB70B5B

什么branch change,edit change,add change是什么意思?为什么MD5相同但我仍然有错误?怎么解决?

Bry*_*ton 13

Perforce的客户端 - 服务器架构在这里让您感到困惑:'verify'命令报告服务器上文件的状态,但'p4 resolve'中''解析前篡改'消息提醒您出现问题客户端上的文件状态.

从您提供的一些信息中可以看出:

  1. 更改9049添加了源文件,带摘要A3269 ...
  2. 更改9070将该源文件分支到目标.当然,源和目标的摘要是相同的,因为分支是文件的完美副本.
  3. 更改22793修改了源文件,因此其摘要已更改
  4. 然后,您尝试将更改22793从源集成到目标.

在大多数情况下,这种集成将是一种直接的"安全解决方案",因为文件仅在源中更改,并且目标是源的先前版本的完美副本.

但是,resolve命令查看了目标文件的实际工作站副本,并发现您在那里的文件不是带有摘要的文件A3269 ...

由于'resolve'命令即将用合并结果替换工作站上目标文件的副本,如果有可能对该文件进行了更改,则不希望这样做(不打开文件)编辑)你不想失去.

因此,'resolve'试图告诉您查看当前工作站上的目标文件的副本(例如,使用文本编辑器),并查看您是否实际对该文件进行了更改.

如果您这样做了,并且想要保存这些更改,那么此时您无法执行此集成; 您需要打开文件进行编辑(当然,使用'edit -k'保留文件的修改后的副本),以便Perforce可以将您编辑的副本与更改22793中的更改合并.

如果您没有对目标文件进行更改,或者您进行了更改但又不想要它们,那么您需要明确地放弃这些更改,例如:

  1. 将挂起的集成还原到目标文件
  2. 运行'p4 sync -f target-file'

这是"解决"试图以非常简洁的方式进行沟通的那种信息

filepath tampered with before resolve - edit or revert.
Run Code Online (Sandbox Code Playgroud)


小智 6

p4 resolve -am我在执行某些文件时也遇到了这个问题。解决方案是对该文件执行p4 edit <filename>然后执行。p4 resolve -am