将文件添加到 p4ignore 后从 Perforce 仓库中删除

问题描述 投票:0回答:1

我正在将大型代码库(> 200k 文件)迁移到 perforce 存储库,在此过程中我添加了许多文件夹和文件类型,现在我想使用 p4ignore 忽略它们。我已经在 p4ignore 中设置了正确的过滤器,它将捕获添加或生成的新文件,但我以某种方式需要查找并删除库中已有的文件和文件夹,如果我得到了它,这些文件和文件夹将被 p4ignore 更改忽略就在第一位。

有标准方法可以做到这一点吗?看来这是一个常见问题。

协调离线工作不能做到这一点,已经搜索了可以做到这一点的 p4 命令,但似乎没有。

perforce p4v
1个回答
0
投票

不幸的是,没有内置命令可以解决这个问题。对于内置的此类东西来说,永久丢失数据的风险会非常高。

为了删除这些文件,您需要对它们运行 obliterate 命令,而不仅仅是将它们标记为删除,这会导致您的工作区尝试从计算机上删除这些文件,并且在使用时会造成很多混乱协调以后的线下工作。

我会推荐您提到的脚本路由,因为听起来手动可能很乏味,除非忽略路径主要由文件夹标识,在这种情况下,手动执行不会那么糟糕。像这样的东西:

p4 obliterate //.../FolderToObliterate/... 

或者,如果您想限制在特定的仓库(可能更安全)

p4 obliterate //DepotName/.../FolderToObliterate/...

(这实际上不会删除文件,但会输出将被删除的文件列表,而无需实际执行。在

-y
之后使用
obliterate
再次运行它,以真正永久清除这些文件及其历史记录)

© www.soinside.com 2019 - 2024. All rights reserved.