• 云途科技成立于2010年 - 专注全球跨境电商服务器租赁托管!
  • 帮助中心

    您可以通过下方搜索框快速查找您想知道的问题

    linux svn恢复删除的文件夹和文件

      in  unix      Tags: 

    我觉得在window下面,查找被删除的svn文件夹和文件是件比较麻烦的事,恢复就更麻烦了。有的时候,命令还是比鼠标要好用的。

    下面做一个例子来说明一下,删除和恢复的例子。

    [root@BlackGhost branch]# svn delete tank  //标记删除一个目录,不是真正删除
    D         tank
    [root@BlackGhost branch]# svn revert tank  //可以用svn revert dir 来恢复前面的操作
    Reverted 'tank'
    [root@BlackGhost branch]# svn commit tank -m "tank"
    svn: Working copy '/home/zhangy/checkout/repos' locked
    svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
    [root@BlackGhost branch]# svn cleanup   //如果出现锁定的情况,cleanup一下
    [root@BlackGhost branch]# svn ci tank -m "tank"
    Deleting       tank
    
    Committed revision 21.
    [root@BlackGhost branch]# svn revert tank   //提交删除后,用这个方法就不管用了
    Skipped 'tank'

    实际删除文件夹和删除文件的操作的方法有一点点不同

    1,删除文件夹后,要回到被删除文件夹的上一级目录

    cd 父目录
    [root@BlackGhost main]# svn log -v |grep -C 4 tank
    ------------------------------------------------------------------------
    r21 | zhangy | 2010-10-26 21:11:16 +0800 (Tue, 26 Oct 2010) | 1 line
    Changed paths:
    D /main/tank

    a
    ------------------------------------------------------------------------
    r20 | zhangy | 2010-10-26 21:10:59 +0800 (Tue, 26 Oct 2010) | 1 line
    Changed paths:
    M /main
    A /main/tank

    a
    ------------------------------------------------------------------------

    从上面我们可以看出,在21版本的时候被删除了,在20这个版本还在,我就可以将其恢复到20版本删除前最新的版本

    [root@BlackGhost main]# svn update -r 20 tank   //恢复删除文件夹
    A    tank
    Updated to revision 20.

    2,如果是删除文件后,是不要回到上一级目录,本目录就行

    [root@BlackGhost branch]# svn log -v |grep -C 4 test.php
    ------------------------------------------------------------------------
    r13 | zhangy | 2010-10-26 21:11:16 +0800 (Tue, 26 Oct 2010) | 1 line
    Changed paths:
    D /branch/test.php     //在13版的时候,被删除了。

    test
    ------------------------------------------------------------------------
    r12 | zhangy | 2010-10-26 21:10:59 +0800 (Tue, 26 Oct 2010) | 1 line
    Changed paths:
    M /branch
    A /branch/test.php

    test
    ------------------------------------------------------------------------

    从上面可以看出,12版本test.php是有的

    [root@BlackGhost branch]# svn update -r 12 test.php    //更新的时候,出现了以下问题
    Skipped 'test.php'
    At revision 12.
    Summary of conflicts:       //提示是有冲突的
    Skipped paths: 1
    [root@BlackGhost branch]# svn resolve --accept working test.php   //解决冲突
    Resolved conflicted state of 'test.php'
    [root@BlackGhost branch]# svn update -r 12 test.php     //恢复删除的文件
    A    test.php
    Updated to revision 12.



    • 外贸虚拟主机

      1GB硬盘

      2个独立站点

      1000M带宽

      不限制流量

      美国外贸专用虚拟主机,cPanel面板,每天远程备份.
      服务器配置:2*E5 32核,96GB 内存,4*2TB 硬盘 RAID10 阵列.

      ¥180/年

    • 美国/荷兰外贸VPS

      2核CPU

      1G内存

      30硬盘

      10M带宽

      美国/荷兰外贸云服务器,专注外贸服务器行业12年.
      服务器配置:2*E5 32核,96GB 内存,4*2TB 硬盘 RAID10 阵列.

      ¥99/月

    • 全球外贸服务器

      8核CPU

      32G内存

      1TB硬盘

      1000M带宽

      已部署数据中心:美国洛杉矶/亚特兰大、荷兰、加拿大、英国伦敦、德国、拉脱维亚、瑞典、爱沙尼亚
      自有机柜(全球九大数据中心),稳定在线率:99.9%

      ¥999/月 原价1380

    7*24小时 在线提交工单

    如果您的问题没有得到解决,推荐您在线提交工单,我们的客服人员会第一时间为您解决问题

    展开