P4V修改工作区映射后仍强制提交非映射目录文件该如何解决
你遇到的问题根源是修改工作区映射前,unwanted目录下的文件已经被打开(检出)到了工作区的 pending 变更列表中,Perforce 不会因为映射规则删除自动处理这些已打开的文件,按以下步骤处理即可:
- 第一步:还原所有unwanted目录下的已打开文件
- 若使用P4V可视化操作:打开「Pending Changelists」面板,筛选路径为
//depot/unwanted/...的所有文件,选中后右键选择「Revert」即可 - 若使用命令行操作更快捷,直接执行:
p4 revert //depot/unwanted/...
- 若使用P4V可视化操作:打开「Pending Changelists」面板,筛选路径为
- 第二步:(可选,更稳妥)给工作区添加排除映射规则
相比直接删除unwanted的映射,添加排除规则可以避免后续如果有上层通配符映射意外把unwanted目录同步到本地,修改工作区映射,添加一行:
减号开头代表该路径会被强制排除,优先级高于其他包含规则。-//depot/unwanted/... //my_workspace/unwanted/... - 第三步:清理本地冗余文件
映射修改完成后,本地的unwanted目录已经不属于Perforce跟踪范围,你可以直接手动删除,也可以执行命令让Perforce自动清理工作区的未映射文件:p4 clean
处理完成后,你提交变更时就不会再出现unwanted目录下的文件,也可以正常删除/重建工作区了。
内容的提问来源于stack exchange,提问作者optical
相关产品推荐
相关产品推荐

