1、安装TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi
创建版本库,方法:打开TortoiseSVN-1.6.4-zh_CN.pdf P14,注意一定要创建两级目录如:D:/SVNNEW/PROJ,不然在服务器安装后自启动有问题,我建的目录就是D:/SVNNEW/PROJ
2、安装CollabNetSubversion-server-1.6.5-2.win32.exe服务器
让服务器程序自启动方法命令如下:
sc create svnserve binpath= "/"C:/Program Files/CollabNet Subversion Server/svnserve.exe/" --service --root D:/SVNNEW" displayname= "SVNOK" depend= tcpip start= auto
配置完成后,用svn://localhost/PROJ,就可以访问版本库了
3、备份版本库
svnadmin hotcopy D:/SVNNEW/PROJ D:/BackUp/SVNNEWBackUp/0.0x
另外PROJ 下的版本库下的配置文件,如本目录中的例子
常见错误总结:
1、svnserve.conf:12: Option expected
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件,如
### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository. (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)
### Visit http://subversion.tigris.org/ for more information.
[general]
### These options control access to the repository for unauthenticated
### and authenticated users. Valid values are "write", "read",
### and "none". The sample settings below are the defaults.
anon-access = read
auth-access = write
像上面的配置文件中,anon-access是顶行的,没问题,而auth-access就存在前置空格,会导致这个错误。
要避免出现这个错误,应该在去掉这些行前的#时,也要顺手去掉前面的空格.
2、Can not connect to host ''IP address" :由于目标机器积极拒绝,无法连接
多数情况下是因为svnserve.exe没有开启,
如果你的版本库的目录是在D:/SVN/PROJ下面,首先需要在cmd中运行svnserve --daemon --root D:/SVN
然后用: svn://localhost/PROJ就可以访问了,注意一定不要关闭cmd,如果关闭了,则svnserve.exe也会被结束
3、No repository found in 'svn://localhost'或者是'svn://(SVN 服务器的IP地址)'
一般情况下出错的原因是svn://localhost/访问的路径不对,如上面的例子中,如果cmd中运行svnserve --daemon --root D:/SVN,则访问的时候就不能用下面的命令语句
svn://localhost/SVNNEW/PROJ
4、提交时提示no authority
一般需要在版本库下conf目录下,svnserver.conf
###anon-access = read
###auth-access = write
###password-db = passwd
前面的空格去掉,并且前面绝对不能有空格,否则会出现第一条中出现的错误
然后在passwd文件中,添加用户名和密码,格式是:用户名=密码
如:admin=888
5、如何配置svnserver.exe为windows服务
如果每次启动计算机需要手动启动svnserver.exe难免有点麻烦,并且启动后cmd窗口还不能关,可以用SC命令将它做成一个windows服务,命令如下:
sc create svnserve binpath= "/"C:/Program Files/CollabNet Subversion Server/svnserve.exe/" --service --root D:/SVNNEW" displayname= "SVNOK" depend= tcpip start= auto
千万记住:这个命令只有一行,并且sc对命令的要求极为苛刻,key= value,也就是说key后没有空格,value前必须有空格,如binpath就是key ,后面的引号内的东西即为value,另外还有一个要注意的是如果路径中有空格一定要用引号重新引一次,例如上例中Program Files之间有空格,那么必须对这个路径另外加一层引号,并且记住用/"(转义字符)
另外还有一个比较怪的问题是,原先我的版本库的目录只有一级,例如:D:SVN/下面就直接是conf等目录了,所以在--root D:/"时就这样写了,启动程序后直接用SVN://IP//SVN,结果不行,认为路径错误,但是我不用这个服务直接用svnserve --daemon --root D:/启动后,就可以,怪了,后来在网上查原因的时候,没发现有什么不同的,后来,就发现一般是版本库都建了两层目录,怪了,不管了,都快24点了,终于搞出来了,该歇歇了。
SVN 客户端和服务器端安装步骤
最新推荐文章于 2024-08-01 16:21:06 发布