tortoiseSVN的使用,如何删除服务器上某些版本?

tortoiseSVN的使用,如何删除服务器上某些版本?,第1张

1、进入需要退回的文件目录,在文件目录下点击鼠标右键,选择TortoiseSVN--更新至版本

2、查看更新的版本号。如果不知道回退到版本号是多少,可以点击显示日志,通过更新的日志就可以看到已经更新的版本号。

3、查看对应的版本号。进入版本号查看日志,就能看到具体到日期,提交记录以及与之对应的版本号信息。

4、点击更新到版本号。输入需要更新到的版本号,然后点击确定,svn就开始讲本地的svn文件更新到指定的版本号。

5、开始更新。svn就开始对中间变化改动的文件进行回退。删除新增的文件,更改变化的文件。

6、重新更新至最新版本。可以在需要更新的文件目录上点击右键,选择更新就可以重新更新svn。

两种方法:

如果用的是VisualSVN-Server,可以从服务器项目文件夹中直接删除;

在客户端,用svn delete命令,然后svn commit提交即可删除或者用Tortoise SVN右键先delete在svn commit也可以删除;

这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的bin目录下)如下:

# 首先将svn库整个导出

svnadmin dump /data/svn/project >project_original.dump

# 然后将project_original.dump文件里面不需要的文件进行排除并生成一个新的dump文件

type project_original.dump | svndumpfilter exclude trunk/test.exe trunk/notallowed >project_new.dump

# 接下来创建一个新的svn项目并将上面的dump文件导入到一个新的项目中

svnadmin create /data/svn/project_new

svnadmin load /data/svn/project_new <project_new.dump

最后将原来的project目录删除并将project_new修改成project即可。需要注意的是dump命令会将svn项目中的所有修改和历史记录都导出来,这样导出的dump文件会很大,而且导入的时间也比较长。

从服务器端彻底删除SVN版本库中部分文件夹或文件

若要彻底删除SVN版本库某一文件夹或文件,可采取这种方法(举例说明):

例:假设SVN库路径为E:/svn/project,库中的目录结构为

QA/Trunk

Software/Tags/test.exe

删除Software/Tags/目录下的test.exe文件

操作步骤为:

把SVN库dump出来

使用svndumpfilter过滤掉要删除的文件

新建一个SVN库

再将处理好的文件load到新的SVN库里

具体命令为:

>svnadmin dump E:/svn/project >aaa.dump

>type aaa.dump | svndumpfilter exclude /Software/Tags/test.exe >bbb.dump

>svnadmin create E:/svn/project_new

>svnadmin load E:/svn/project_new <bbb.dump

然后再将新建的project_new 重命名为project,以前的project可以移走,或是另取一个名称.(因为在TRAC中使用的SVN目录是project,用户所使用的SVN目录也是project)

此方法在SVN库里版本不多的情况下完全可以达到彻底删除SVN版本库某一文件夹或文件的效果,但是如果SVN库里的版本过多,在dump版本的时候会因存储空间不足,而无法dump版本.也就无法操作了.这时须另挂能满足其存储空间的硬盘操作.

SVN如何恢复已删除文件或文件夹

用TortoiseSVN:

1.在本地working copy中,用TortoiseSVN->Show log查看版本库的历史记录。可以用search。

2.找到删除该文件或者文件夹的版本,在Log message里右键Revert the changes from this revision。

3.该文件或文件夹就被恢复到本地的working copy中了。如果是误删除的,commit到Repository里就行了。

用Eclipse的Subclipse插件:

1.用Team->Show SVN Repository History查看版本库的历史记录。

2. 找到删除该文件或者文件夹的版本,右键Revert to XX version.

3.该文件或文件夹就被恢复到本地的working copy中了。如果是误删除的,commit到Repository里就行了。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/220053.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-06
下一篇2023-04-06

发表评论

登录后才能评论

评论列表(0条)

    保存