• 【SVN】彻底 svn 服务器上的 删除某一个文件或文件夹


    参考:

      CSDN1:https://blog.csdn.net/u011729865/article/details/78764523

      CSDN2:https://blog.csdn.net/wyyother1/article/details/80061952

    1、注意一下,我客户端是在 windows 系统下,而 svn 的服务端是在 Linux 系统中。

     

    2、可以来到,我们这边一开始有一个用来测试删除用的文件 和 文件夹: 用来删除用的测试.txt、用来测试删除用的文件夹 

     

    3、然后我们通过 移动到回收站(或者 Shift + del 键的彻底删除后)后,提交

     

     

    4、虽然在最新的版本中,我们看不到上面删除的 文件 / 文件夹。

     

    5、但在前面的版本中,我们还是能看到的。

    6、这个时候要彻底删除 svn 服务器 版本库中,所有版本中的这两个文件 / 文件,按下面步骤操作:

      (a)、先备份 你要删除的该 svn 版本库,我这里的版本库是 叫 test,可以看到,我这边一共有 7个版本,都已经备份好了,名字叫 a.dump。

    svnadmin dump 版本库路径 > 备份后的名字.dump

     

      (b)、然后,因为我们不改变版本库的名称,所以要先把 test 的版本库改变名称,然后,新建一个新的 test 版本库

    mv test test11 # 把 test 文件夹 重命名为 test11
    mkdir test # 创建名为 test 的文件夹
    svnadmin create test # 创建版本库,其实不需要上面的 mkdir test 也可以,因为这条命令已经包含了,新建
    rm -rf test/conf #彻底删除新建版本中 conf 的配置,为了保持原本用户权限等信息
    cp -r test11/conf test/ # 把原来的 test 版本库 的配置直接复制一份到 新的 test 中。

      (c)、过滤掉不要的 文件夹 和 文件

    cat a.dump | svndumpfilter exclude 在版本库中的路径 以 / 开头,有多个要过来的,用空格隔开 > test.dump

       (d)、然后把备份放回新的同名仓库中。

    svnadmin load ./test < test.dump #注意,这边的 < 跟上面的是不一样的。上面的是 > 

    7、执行完上面的,就重启 svn 服务器。

     

    8、为什么要彻底删除呢整个版本库中的文件,拿 web 前端项目来比如:

      1、vue-cli 安装 node 包之后,或多出来一个 node_module 文件夹

      2、node_module 下面是所有的 node 包,但其实这个包是不应该上传到 svn 的,因为我们只要拿到它的配置文件 package.json 就能安装好。

      3、像我这种穷人,租了个腾讯云只有 40G ,如果那些 node 包都上传上去,动不动就几百M,根本空间不够去玩很多想要玩的编程知识

  • 相关阅读:
    ANSI C 与 C99的不同
    字符串中含有空格的注意事项
    巧用printf函数
    求数列的和
    数值统计
    平方和与立方和
    求奇数的乘积
    第几天?
    细节之重
    用%*c滤掉回车,ASCII码排序
  • 原文地址:https://www.cnblogs.com/-xk94/p/10043235.html
Copyright © 2020-2023  润新知