zoukankan      html  css  js  c++  java
  • 【转】SVN服务器端安装、配置与管理--不错

    原文网址:http://blog.csdn.net/qq505810824/article/details/7824929

    搭建svn服务的方法步骤问题,主要有七个部分 。下面是具体的步骤介绍。
     
    一、准备工作
     
    1、获取Subversion服务器程序
    到官方网站(http://s version.tigris.org/)下载最新的服务器安装程序(文件名为subversion)。目前最新的是1.5版本,具体下载地址 在:http://s version.tigris.org/servlets /ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91

    2、获取TortoiseSVN客户端程序
    从官方网站http://tortoisesvn.net/downloads获取最新的TortoiseSVN。TortoiseSVN是一个客户端程 序,用来与Subversion服务器端通讯。Subversion自带一个客户端程序svn.exe,但TortoiseSVN更好操作,提高效率。

     
    二、安装服务器端和客户端 
     
    搭建svn服务第二步要安装服务器端和客户端。安装Subversion(以下简称SVN)的服务器端和客户端。下载下来的服务器端是个zip压缩包,直接解压缩即可,比如我解压到E:Subversion。客户端安装文件是个exe可执行文件,直接运行按提示安装即可,客户端安装完成后提示重启。
     
    三、建立版本库(Repository) 
     
    运行Subversion服务器需要首先要建立一个版本库(Repository)。版本库可以看作是服务器上集中存放和管理数据的地方。开始建立版本 库。首先建立e:svn空文件夹作为所有版本库的根目录。然后,进入命令行并切换到Subversion的bin目录。输入如下命 令:svnadmincreateE:svn epos1此命令在E:svn下建立一个版本库repos1。repos1下面会自动生成一些文件夹和文件。我们也可以使用TortoiseSVN图形化的完成这一步:先建立空目录E:svn epos1,注意一定是要空的。然后在repos1文件夹上“右键->TortoiseSVN->CreateRepositoryhere...”,然后可以选择版本库模式,这里使用默认的 FSFS即可,然后就创建了一系列文件夹和文件(其中就有在以前单位维护过的conf目录和该目录下的authz、passwd文件),同命令行建立的一样。(目前在客户端下载服务器上文件的地址为)
     
    四、运行独立服务器 
     
    搭建svn服务过程中要运行独立服务器。此时Subversion服务还没有开始,只是通过它的命令建立了版本库。继续在刚才的命令窗口输入:svnserve.exe--daemon

    svnserve将会在端口3690等待请求,--daemon(两个短横线)选项告诉svnserve以守护进程方式运行,这样在手动终止之前不会退出。注意不要关闭命令行窗口,关闭窗口会把svnserve停止。为了验证svnserve正常工作,使用TortoiseSVN->Repo- browser来查看版本库。在弹出的URL对话框中输入:svn://localhost/svn/repos1
    点OK按钮后就可以看见repos1版本库的目录树结构了,只不过这时repos1是个空库。你也可以使用--root选项设置根位置来限制服务器的访问目录,从而增加安全性和节约输入svnserveURL的时间:svnserve.exe--daemon--rootdrive:path o epository以前面的测试作为例,svnserve将会运行为:svnserve.exe--daemon--roote:svn然后 TortoiseSVN中的版本库浏览器URL缩减为:svn://localhost/repos1

     
    五、配置用户和权限(以前单位对权限的配置,就是按这么来的) 
     
    用文本编辑器打开E:svn epos1conf目录,修改svnserve.conf:将:#password-db=passwd改为:password-db=passwd

    即去掉前面的#注释符(使语句起作用),注意前面不能有空格。然后修改同目录的passwd文件,增加一个帐号:将:
    [users]
    #harry=harryssecret
    #sally=sallyssecret
    增加帐号:
    [users]
    #harry=harryssecret
    #sally=sallyssecret
    test=test

     
    六、初始化导入 
     
    下面就是搭建svn服务时将我们的数据(项目)导入到这个版本库,以后就由版本库管理我们的数据。我们的任何改动都回被版本库记录下来,甚至我们自己丢失、改错数据时版本库也能帮我们找回数据。

    比如,我在d:wwwroot下有个gstbook文件夹,里面存放的是我编写的留言簿程序。在此文件夹上“右键 ->TortoiseSVN->Import...”,在弹出对话框的“URLofrepository”输入 “svn://localhost/repos1/gstbook”。在“Importmessage”输入“导入整个留言簿”作为注释。
    点OK后要求输入帐号。我们在用户名和密码处都输入test(正是上面在passwd文件中添加的用户账号)。完成后gstbook中的内容全部导入到了svn://localhost/svn /repos1/gstbook。
    我们看到在e:svn epos1没有任何变化,连个gstbook文件夹都没有建立,唯一的变化就是e:svn epos1容量变大了。实际上我们源gstbook中的内容已经导入repos1版本库了,源gstbook文件夹可以删除了。需要注意的是,这一步操作可以完全在另一台安装了TortoiseSVN的客户机上进行。例如运行svnserve的主机的IP是133.96.121.22,则URL部分输入的内容就是 “svn://133.96.121.22”。

     
    七、基本操作流程
     
    1、取出(checkout)

    取出版本库到一个工作拷贝:
    来到任意空目录下,比如在f分区建立一个空文件夹f:work。“右键->SVNCheckout”。在“URLofrepository”中输 入“svn://localhost/svn/repos1/gstbook”,这样我们就得到了一份gstbook中内容的工作拷贝。
    2、存入(checkin)/提交(commit)
    在工作拷贝中作出修改并提交:
    在gstbook工作拷贝中随便打开一个文件,作出修改,然后“右键->SVNCommit...”。这样我们就把修改提交到了版本库,版本库 根据情况存储我们提交的数据。
    在修改过的文件上“右键->TortoiseSVN->ShowLog”,可以看到对这个文件所有的提交。在不同的revision条目上 “右键->Comparewithworkingcopy”,我们可以比较工作拷贝的文件和所选revision版本的区别。本节介绍搭建SVN服 务完毕,请关注本节其他相关报道。

    八、补充说明

    1、svn服务器端只能装在c盘下 svnserve.exe --daemon 这个命令才能使用,版本库也必须放在c盘下svn://localhost 对应的是c盘直接目录

    如果你创建的文件夹目录为 c:/svnlib/weibo。那么import的地址为svn://localhost/svnlib/weibo


    2、svn配置结束,这是最简单的步骤,已经可以用了,然后把svn整合到系统服务,以后就不用一直开着命令窗口了。把以下内容粘贴到文本文件,然后重命名文件为:*.bat执行就好了,
    sc create svnserver binpath= "C:Program FilesS versioninsvnserve.exe --service --root F:svn" displayname= "svnserver" depend= tcpip start= auto obj= "NT AUTHORITYNetworkService"
    其中C:Program FilesS versioninsvnserve.exe 为svn的路径
    F:svn 为版本库的目录
    displayname= "svnserver" 为设置服务的名字
    --root 是设置根目录 比如:原来你访问为:svn://localhost/svn 
    设置--root F:svn之后缩写为svn://localhost 这个一定要注意,否则Error: URL 'svn://localhost/svn'doesn't exist

    (注意:以上bat文件中的内容不要自动换行,就写在一行里,换行后就可能报错"windows 找不到文件'auto' ")

    九、使用帮助

    1.文件夹A点击右键->TortoiseSVN->import到文件夹B时,报错如下,原因:文件夹B不是一个版本库

    2..文件夹A点击右键->TortoiseSVN->import到版本库B时,报错如下,原因:版本库B中的conf目录下svnserve.conf文件中,未将# password-db = passwd的注释去掉

  • 相关阅读:
    快速排序
    冒泡排序
    mysql 拷贝表插入新的表
    http协议
    nginx错误日志error_log日志级别
    MySQL数据库远程访问的权限
    mysql create database 指定utf-8编码
    MYSQL日志
    linux常用命令
    java学习--基础知识进阶第六天--集合&迭代器、增强for & 泛型、常见数据结构、List子体系
  • 原文地址:https://www.cnblogs.com/wi100sh/p/5230199.html
Copyright © 2011-2022 走看看