我觉得在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 .
[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.

 

转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/server/1073.html

linux svn恢复删除的文件夹和文件(转)的更多相关文章

  1. linux安装PyCharm,PyCharm常用快捷键及调试模式,pycharm里面对文件夹或者文件进行重命名

    PyCharm常用快捷键及调试模式 2017年10月18日 23:13:43 菜鸟之神 阅读数:5835    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn ...

  2. albert1017 Linux下压缩某个文件夹(文件夹打包)

    albert1017 Linux下压缩某个文件夹(文件夹打包) tar -zcvf /home/xahot.tar.gz /xahottar -zcvf 打包后生成的文件名全路径 要打包的目录例子:把 ...

  3. Linux 删除文件夹和文件的命令

    linux删除目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm -rf命令即可.直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字-r 就 ...

  4. svn忽略不需要同步的文件夹或文件

    如果某个文件已经提交到了svn,这个时候需要通过svn来把服务器上的改文件删除,然后再在本地,点击该文件 选择把该文件删除,recursively表示递归删除(文件下->下级文件夹->下级 ...

  5. Linux上统计文件夹下文件个数以及目录个数

    对于linux终端用户而言,统计文件夹下文件的多少是经常要做的操作,于我而言,我会经常在谷歌搜索一个命令,“如何在linux统计文件夹的个数”,然后点击自己想要的答案,但是有时候不知道统计文件夹命令运 ...

  6. Linux 删除文件夹和文件的命令(转载)

    Linux 删除文件夹和文件的命令 听语音 | 浏览:93339 | 更新:2013-05-02 18:40 | 标签:linux 文件夹 linux删除目录很简单,很多人还是习惯用rmdir,不过一 ...

  7. linux 批量设置文件夹755 文件644权限

    linux 批量设置文件夹755 文件644权限 文件来源 http://www.111cn.net/sys/linux/109724.htm 本文章来为各位介绍一篇关于linux 批量设置文件夹75 ...

  8. Linux 系统下文件夹与文件的读写可执行权限问题

    linux是一个多用户操作系统,linux对文件系统内的所有文件,实行了严格的权限划分管理.防止没有权限的用户访问某个文件.linux文件或目录的权限分为 读.写.可执行三种权限.文件访问的用户类别分 ...

  9. 在Linux中要修改一个文件夹或文件的权限

    在Linux中要修改一个文件夹或文件的权限我们需要用到linux chmod命令来做,下面我写了几个简单的实例大家可参考一下. 语法如下: chmod [who] [+ | - | =] [mode] ...

随机推荐

  1. Sqli-labs less 12

    Less-12 本关和less11是类似的,只是在id 的参数的处理上有一定的不同 当输入username:admin" Password: (随便) 报错后的结果为: You have a ...

  2. Flask实战第43天:把图片验证码和短信验证码保存到memcached中

    前面我们已经获取到图片验证码和短信验证码,但是我们还没有把它们保存起来.同样的,我们和之前的邮箱验证码一样,保存到memcached中 编辑commom.vews.py .. from utils i ...

  3. linux——(2)文件权限与目录配置

    概念一:用户与用户组 对linux下的每一个文件或者目录来说,访问者都有三种身份:所有者,用户组,其他人.这三种人对于同一个文件的权限是可以分开设定的. 概念二:linux文件权限 文件和目录都有3种 ...

  4. 多协议注入工具t50

    多协议注入工具t50   t50是Kali Linux自带的一款网络数据包注入工具.该工具支持15种协议,不仅涵盖常规协议(ICMP.TCP.UDP),还涵盖基础协议和路由协议(GRE.IPSec.R ...

  5. SPOJ Time Limit Exceeded(高维前缀和)

    [题目链接] http://www.spoj.com/problems/TLE/en/ [题目大意] 给出n个数字c,求非负整数序列a,满足a<2^m 并且有a[i]&a[i+1]=0, ...

  6. 【筛法求素数】Codeforces Round #426 (Div. 1) A. The Meaningless Game

    先筛出来1000以内的素数. 枚举x^(1/3) 和 y^(1/3)以内的素因子,这样除完以后对于x和y剩下的因子,小的那个的平方必须等于大的. 然后判断每个素因数的次数之和是否为3的倍数,并且小的那 ...

  7. 【动态规划】POJ2385-Apple Catching

    [题目大意] 有两棵树1和2,奶牛Bessie位于树1下,每个单位时间会有一个苹果从其中一棵树掉下来,同时Bessie也可以移动一次,但是Bessie不希望移动超过W次,问T时间内Bessie最多得到 ...

  8. FutureTask源码分析

    1. 常量和变量 private volatile int state; // 任务状态 private static final int NEW = 0; private static final ...

  9. for循环、for-in、forEach、for-of四大循环

    平时自己在写一些小栗子的时候,用到的基本上是for循环,因为在学专业课(C,C++,JAVA,...)的时候用的最多的就是for循环,不过for循环的效率也是比较高的. 但是for循环在写的时候,涉及 ...

  10. [典型漏洞分享]YS的防暴力破解设计存在缺陷

    YS使用的防暴力破解机制存在缺陷,该缺陷可被用于暴力破解其它用户密码[高] 问题描述: YS在用户登录页面设置了验证码机制,当用户输入密码错误次数达到3次时,再次登录需要验证码以防止攻击者进行暴力破解 ...