最近,我正在使用存储库的本地副本,并意外删除了一个文件。自上次以来,我进行了各种编辑hg commit
,但不知道该怎么做。最后,我访问了bitbucket.org网站,找到了文件,单击Open raw
并通过我的浏览器下载了该文件。这是可行的,但显然不正确。
如果我们调用已删除的文件file.txt
和存储库code-repo
,应该如何使用恢复已删除的文件hg
?
(我的系统基于Ubuntu。)
我的理解是您修改了源代码控制的文件,但是在将任何修改提交回源代码控制之前,该文件已被删除。
在这种情况下,您必须像对待其他丢失文件的情况一样对待它,它在源代码控制中的事实似乎根本没有帮助(除非下面列出了一些例外)。我将研究您的操作系统/文件系统具有哪些功能来进行文件恢复(例如“垃圾箱”或“回收站”文件夹,如果有的话)。
注意事项-您可能很幸运,并且至少在进行某些更改后,可能会存在某种文件的自动备份或副本。我会寻找:
* .bak或* .orig文件,它们可能是由编辑器或源代码控制工具创建的
Mercurial“架子”(如果您曾经使用过)
如果使用过Tortoise HG“架子”(实际上与标准Mercurial架子不同)
仔细检查已编辑的文件在编辑器中仍未打开。(这为我节省了不止一次!)请小心,如果编辑器说“此文件已更改,您要重新加载”以单击“否”。
临时文件夹中的文件可能恰好是从编辑器自动保存的。查看时间戳,看是否有可能来自正确的时间段。
假设您无法恢复编辑后的文件,至少可以很轻松地返回到hg中的最新版本:
$ hg revert path\to\filename
这将使文件恢复为变更集中的状态,该变更集中是工作文件夹的父级。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句