因为SVN可以记录相应的信息,请问如果某一个用户不小心上传了几个个感染病毒的doc文件,大家该如何处理?

解决方案 »

  1.   

    安装svn的服务器一般都有杀毒设置的,而且安全的是两个杀毒软件同时杀毒。安全性很高
      

  2.   

    问题是SVN可以恢复删除掉的文件。
    如果有用户查看该文档的历史,或者恢复出该文件,不是仍然有病毒么?
      

  3.   

    不太明白了
    svn可以通过tortoiseSVN客户端直接上传至SVN服务器,似乎跟服务器的杀毒软件没有什么关系呀。
    莫非可以将杀毒软件与SVN服务器结合起来,拦截有病毒的文件?
    可这样的配置从来没见过,如果有的话,请指教。
      

  4.   

    嗯,这确实是个问题。SVN用于版本控制,删除的文件是可以恢复的。
    但是SVN里德文件也可以永久删除:http://blog.163.com/tom_suntendy/blog/static/1780753200922032316737/
      

  5.   

    你的意思是不是用SVN的delete删除了感染了病毒的plan.doc文件,然后再svn add一个没有病毒的plan.doc文件。
    但是如果用户通过showlog->open 是否还是能找到之前上传的病毒文件呢?
      

  6.   

    是的,还可以找到。这种情况你就只能重新再搭建一个svn服务器,重新把没用病毒的传到新建的服务器上。
      

  7.   

    以下为引用,希望对LZ有帮助:
    我想用过Subversion的人一定有过这样的问题:“为什么不允许用户修改日志?”,因为这种改变不可还原(目前这个操作还没有受到版本控制的管理),所以这项功能默认是被禁止的。如果要开启它,必须设置一个pre-revprop-change钩子。版本库生成后,hooks目录下就存在一些钩子脚本的模板,用户可以作为参考。这里我们可以把已经存在的pre-revprop-change.tmpl复制一份,将复制后的文件名改为pre-revprop-change.bat,钩子就设置好了。注意Windows下钩子脚本必须以.bat或者.exe的扩展名形式存在。默认的钩子模板使用的是linux下的脚本语言,不能在Windows下运行。所以我们必须重写,这里介绍用批处理文件来写钩子脚本的方法。最简单的允许修改日志的pre-revprop-change.bat连一行都不需要,直接把pre-revprop-change.bat的内容清空就行了,因为按照Subversion的约定,钩子脚本返回0就是允许修改任何属性。(关于钩子脚本的约定可参考这篇文章http://blog.donews.com/foxgem/archive/2005/11/03/613854.aspx)但是假如我们希望作些判断,比如只允许修改日志,而不允许修改用户名或者其他属性,那么下面是一个范例:SET REPOS="%1"
    SET REV="%2"
    SET USER="%3"
    SET PROPNAME="%4"
    SET ACTION="%5"IF %ACTION% == "M" (IF %PROPNAME% == "svn:log" (EXIT 0))ECHO "Changing revision properties %PROPNAME% is prohibited" >&2
    EXIT 1
    利用Subversion的一个程序svnlook,脚本中可以访问的信息就不仅仅只有传递进来的5个参数了,从而可以实现更多的功能。比如判断修改日志的用户是不是以前进行提交的那个作者,如果不是就不允许修改。只允许用户修改自己的svn日志的钩子脚本:for /f "usebackq" %%k in (`svnlook author %1 -r%2`) do @set var=%%kif "%3" == "%var%" goto test
    if "%3" == "li"    goto test
    exit 1:test
    if "%4" == "svn:log" exit 0
    echo Property '%4' cannot be changed >&2
    exit 1
    实现每人可以修改自己的log日志,而管理员li可以任意修改。这个例子是从网上摘抄来的,因为手头上缺少svnlook,所以没有进行测试。本文来自[Svn中文网]转发请保留本站地址:http://www.svn8.com/svnpz/20091204/14579.html
      

  8.   

    通过MyEclipse或者其他工具来打开当前项目所在的SVN目录,这时候你想要这么操作都行
      

  9.   

    這個我知道。但我目前用的是TortoiseSVN客戶端。
      

  10.   


    非常感謝,可能我需要研究下hooks
      

  11.   

    Mark我以前都用6楼的方法。看起来SVN确实也需要提供一些强一点的管理员功能了。