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

Posted xk魁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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,根本空间不够去玩很多想要玩的编程知识

以上是关于SVN彻底 svn 服务器上的 删除某一个文件或文件夹的主要内容,如果未能解决你的问题,请参考以下文章

svn如何彻底删除目录

svn如何在服务器端删除,本地没删,怎么解决?

不小心把svn上的文件夹删除了怎么恢复?

subversion 彻底删除 服务器上的 一个项目,搭建subversion 服务器,并自动部署项目...

subversion 彻底删除 服务器上的 一个项目,搭建subversion 服务器,并自动部署项目...

subversion 彻底删除 服务器上的 一个项目,搭建subversion 服务器,并自动部署项目...