tortoiseSVN的使用,如何删除服务器上某些版本?
仅用tsvn的话是不能删除的,只能回滚(复原)到50版本,然后在此版本基础上继续后面的工作
具体操作:
1、在受SVN控制的某层文件夹或文件上点右键,选择“TortoiseSVN-显示日志”
2、在弹出的日志窗口中,右键点击要复原的版本,选择“复原到此版本”
3、复原结束后,执行“提交”操作,将此版本作为版本库的最新版本
比如你从50版复原,复原后产生的101版实际和50版是一样的,再往后的工作就和正常一样进行了
如果要彻底从库中删除51-100版,那就很麻烦了,得把服务停掉,然后用svn的过滤工具来处理,非常的麻烦
方法是有的,但是svn log我还是强烈建议你不要清除。
方法如下:
在服务器端找到
Repositories\MyTestRepository\db\revprops\0
和
Repositories\MyTestRepository\db\revs\0
目录下就是日志信息了,删掉就没了
首选要避免这种情况,就必须把匿名用户的写权限删除掉,也就是说权限控制文件里面不能有
= rw
这样的内容。
然后只能查服务器端的日志了,具体怎么查要看SVN服务器是怎么搭建的了,如果是和Apache集成的,就去查Apache的日志,里面有各客户端向Apache服务器发起请求的记录,包括了什么时间、哪个IP地址等信息,但查起来很痛苦。而且不保证这个日志一定会有,因为日志挺占空间的,所以大多数情况下架设服务器时都只会保留错误日志,很多时候都不保留正常操作日志。
SVN服务器版本库有两种格式,
一种为FSFS,
一种为BDB
把文件上传到SVN版本库后,上传的文件不再以文件原来的格式存储,而是被svn以它自定义的格式压缩成版本库数据,存放在版本库中。
如果是FSFS格式,这些数据存放在版本库的db目录中,里面的revs和revprops分别存放着每次提交的差异数据和日志等信息
目前用的最多的是FSFS方式,这种方式的话,一般是存储在\db\revs文件夹下,里面有一堆以版本号命名的文件,如:0、1、2、3、4,那个就是了。
svn先把0版本的状态压缩成1个文件,然后每次版本更新时就针对变动的部分做一个压缩文件,每次都是增加一个增量包,最后在服务器上能看到文件名为从0开始到最终版本的一系列文件
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
版本库浏览的时候在根目录那里要注意不要多添加一个"/":
这个斜杠留着和去掉都可以正常打开版本库,但是这个斜杠留着后面浏览子目录的时候就会多一个斜杠,导致浏览日志的时候提示1970和找不到路径:
去掉这个斜杠,日志就可以在线打开了
0条评论