如何将Perforce中搁置的CL视为补丁?

如何将Perforce中搁置的CL视为补丁?,perforce,Perforce,假设我在周一创建了一个编号为2903395的搁置变更列表(CL)。更改从未提交,但其他修改已提交,它们涉及到我的CL文件 星期二,我想申请搁置的CL并提交: p4 unshelve -s 2903395 但是会发生这样的情况:其他人对我的文件所做的更改现在被丢弃,我的原始更改被应用。 这不是我想要的:我想要我的改变被应用到其他人所做的改变之上。我该怎么做 我来自Git,所以我在考虑周一做一个Git格式的补丁,周二做Git am;Perforce会自动处理这个问题!做: p4 unshelve

假设我在周一创建了一个编号为
2903395
的搁置变更列表(CL)。更改从未提交,但其他修改已提交,它们涉及到我的CL文件

星期二,我想申请搁置的CL并提交:

p4 unshelve -s 2903395
但是会发生这样的情况:其他人对我的文件所做的更改现在被丢弃,我的原始更改被应用。 这不是我想要的:我想要我的改变被应用到其他人所做的改变之上。我该怎么做


我来自Git,所以我在考虑周一做一个Git格式的补丁,周二做Git am;Perforce会自动处理这个问题!做:

p4 unshelve -s 2903395
p4 sync
p4 resolve -am

当您
p4取消搁置
时,文件将恢复到您
p4搁置
d时的状态,包括跟踪文件所基于的仓库修订的“have revision”——只有当您
p4 sync
时,才会更新该文件以反映新提交的修订,然后,
p4 resolve
合并中的更改。

如果您这样做是为了将您的工具架“重定”为当前主文件头,您可以(a)在同步和解析后用新文件替换当前工具架,或者(b)在该点用新文件创建新工具架。这主要是品味的问题,尽管每个架子都会消耗一些服务器资源。