其它基础 - 恢复误删文件 ¶
作者:KK
发表日期:2015.12.27
本章内容教你在不小心删除文件后如何将它恢复出来,其实它中"还原变更"的内容之一,只是我将它与文件的恢复独立出来讲
简单的还原 ¶
直接更新就可以重新下载文件,但如果你是通过SVN的删除菜单删除的话,更新是不会重新下载的,因为你操作SVN的删除菜时,SVN客户端对你的理解就是"这个菜单是你点击的,你确认要删掉这个文件",所以尽管更新了,但SVN收到过类似于"你不要这个文件"的消息,于是它当然不给你重新下载了啦,免得你又骂它"明明说了要删除文件,你怎么又给我恢复出来了"
正规方法 ¶
当你通过右键的系统删除菜单或者SVN的删除菜单对一个文件删除后,如果想还原它,笨方法就是告诉其他同事你的同事"不好意思我删错文件了,麻烦把你的这份文件传给我吧",但实际上千万别这样做哟,别人会觉得"学了这么多SVN知识你怎么还是这么水啊?自己还原就行啦"
同事都不帮你 唯有自己学一下怎么恢复啦
以下有两种还原方式:
对空白的地方提交,出现变更文件列表,问你要不要提交这些变更嘛,千万别提交哦!下面就显示你误删的那个文件状态是已删除或缺少,你单击选中这个文件,右键弹出菜单选择"还原"那么它就会回到你的目录中咯
展开TortoiseSVN菜单找到
检查修改
菜单,它会有一个窗口列表显示有哪些文件发化了变更的,我之前说过,删除也是一种变更,从存在变成了不存在,再右键这个列表里的文件选择还原就行咯
其实以上两个方法的原理都是搞出变更文件列表,再对发生删除变更的文件进行还原
未登记进仓库的文件无法还原 ¶
那些你新建后未通过加入
菜单向本地仓库进行登记的文件,对于SVN来说它是"我管不了的东西",所以当你不小心删除它之后,弄出文件变更列表时它只会告诉你版本库没发生变化,它只管它的版本库,管不了的东西它才不理你,所以,我之前没怎么说,你现在终于也明白为什么新建的文件对它右键时会有个加入
菜单了吧
经验之谈 ¶
其实我还真试过将未登记进仓库的文件给删除了,又没办法将它还原,因为我经常习惯性地按Shift+Delete
进行彻底删除,我一般是因为误删的
发生这样的情况是因为我的新功能需要新文件,于是我建立了新文件,但这功能又不是一时三刻就能开发完毕的,需要几天或一些周期,于是我暂时没提交它,但又没记得加入版本库,于是错手删除的时候,代码就白写了
听我的,新建的文件,你觉得要点时间写代码,过一段时间才提交的话,赶紧先加入
版本库,以便误删时可以进行还原啊