搁置后,p4v 不会删除通过“p4 add”添加的新文件

Max*_*kyi 2 perforce p4v

我今天尝试搁置文件并检查了该Revert checked out files after they are shelved选项,搁置文件后,一些文件已被还原,但有些文件仍然存在。这些似乎是通过p4 add. 搁置后不删除此类文件是默认行为吗?有没有办法在搁置过程中将它们移除?

sfe*_*cik 5

您在 P4V 中所做的(搁置恢复)实际上是两个命令的简单组合:shelverevert. 在幕后,P4V 将搁置您的工作(正如它确实所做的那样),然后恢复您的更改列表中的所有内容。

现在,该revert命令p4 add以这样一种方式恢复s,使它们从您的更改列表中消失(恢复的本质),但它们仍保留在本地文件系统上(以防止无意中丢失代码/数据)。是的,您可以争辩说,在这方面revert完全恢复您的工作并没有做得很好,但显然 Perforce 已决定通过不删除您的工作来确保安全。

正如@Bryan Pendleton 所说,当您还想从文件系统中删除您的s时,您可以使用p4 revert -w而不是普通。它不是一个单独的命令,只是. 但是,从 P4V 运行“搁置和还原”组合操作时,无法指定标志(行为)。(事实上​​,即使在来自 P4V 的简单“恢复”操作中也无法指定。)p4 revertp4 addp4 revert-w-w-w

我假设你不会因为这个原因从 P4V 切换到命令行(p4 shelve然后运行p4 revert -w),所以请记住 P4V 有这个小怪癖,如果需要,请在恢复它们后删除本地文件。