是否有可能在perforce中恢复已删除的搁置文件?

时间:2013-06-04 16:59:02

标签: perforce

我在更改列表中搁置了一些更改。看起来我错误地删除了那些被搁置的文件。我没有太多希望恢复它们,但鉴于搁架将更改放在服务器中,是否有机会在某处仍然可以访问它们?

谢谢

4 个答案:

答案 0 :(得分:3)

不幸的是,一旦您从存储库中删除了搁置的文件(不再附加到更改列表),它们就不再存储在可以检索它们的任何位置。

我今天刚刚在一个仓库上处理了这个问题,我正在使用一个搁置的文件,并且不按顺序执行操作,删除了我想要保存的内容。在我的情况下,我有一个连续的备份系统,并能够使用它恢复。

通常,我们正在转向任务流,因为这样的事情。新“任务流”的一个好处是,它们提供了搁置和快速分支的短期方面,而不会使整个存储库混乱。基本上类似于git中的轻量分支。

答案 1 :(得分:1)

如果您只删除了本地文件,而不是删除了搁置的更改本身,您应该可以通过取消支持更改来恢复它们:

p4 unshelve -s <change>

答案 2 :(得分:0)

对我有用的是我最近对他们进行了分歧。所以,我在Perforce temp文件夹中找到它们: C:\用户\\应用程序数据\本地\ TEMP \ P4V \ PC101907_perforce_1666

答案 3 :(得分:0)

如果您只是删除了一个或多个本地文件,但该文件架仍然存在,则可以使用以下命令查看文件的状态,直到最后一个文件架

p4 print -q //depot/path/to/file@=123456 

其中// depot / path / to / file是仓库位置,123456是已搁置的变更列表。

请注意,我在网上找到的其他信息表明,您可以简单地搁置指定的文件。如果丢失的文件是为“编辑”打开的,那么这可能会起作用,但是,如果为“添加”打开了丢失的文件(如我刚刚所处理的),则搁置只会死于“无法搁置(已为添加打开)”错误。