Perforce 如何放弃Performce中所有未提交的更改?

Perforce 如何放弃Performce中所有未提交的更改?,perforce,Perforce,什么是p4命令来丢弃performe工作区中所有未提交的更改 使用Git时,类似的命令是:Git reset--hard如果您没有签出您编辑的文件,请先执行 p4 reconcile ... 获取Performance跟踪的更改 如果要撤消的更改已经在任何更改列表中,则不需要此选项 然后,从工作区的根目录 p4 revert ... (…是给定目录下所有内容的性能通配符,而不是您必须自己填写的内容) 如果您还想从磁盘中删除未跟踪的文件,那么如果您使用的是2013.2版或更高版本,则可以将-w

什么是
p4
命令来丢弃performe工作区中所有未提交的更改


使用Git时,类似的命令是:
Git reset--hard

如果您没有签出您编辑的文件,请先执行

p4 reconcile ...
获取Performance跟踪的更改

如果要撤消的更改已经在任何更改列表中,则不需要此选项

然后,从工作区的根目录

p4 revert ...
是给定目录下所有内容的性能通配符,而不是您必须自己填写的内容)

如果您还想从磁盘中删除未跟踪的文件,那么如果您使用的是2013.2版或更高版本,则可以将
-w
传递到
p4 revert
以同时删除新添加的文件。有关此选项的一些背景信息,请参见


协调
步骤将首先检测这些文件并将其标记为添加,然后
还原
步骤将取消标记以添加和删除它们。如果
-w
不可用,则没有干净的方法来执行此操作,文件将不被跟踪,并在还原后保留在磁盘上。

p4 revert
是您要查找的命令

请记住,如果只想还原指定的变更列表,则必须指定其变更列表编号,如:

p4还原-c变更列表编号

或者,如果不是从工作区根目录运行,请指定工作区/客户端名称,如:


p4 revert//myWorkspace/…

这两个命令都不会删除Perforce不知道的本地文件,这与
git reset--hard
有很大区别。好的一点是,p4 reconcile将检测到它们,但p4 revert只是恢复“添加标记”,而不删除文件。似乎新的-w标志可以处理这个问题,我编辑了我的答案。嗯,我刚刚试过这个。如果我将cd放入p4控制下的文件夹,并
mkdir testdelete;光盘测试删除;触摸testdeletefile.txt;光盘p4 revert-w.
p4只是说此客户端上未打开
文件
git reset--hard
会删除该文件夹。这对于git用户来说是一个至关重要的区别。您还需要包括“p4协调…”步骤。如果我这样做,我会在
p4协调…
步骤之后打开
testdeletefile.txt进行添加。我希望删除该文件,但这并不是要执行的操作。