第一步:下载文件和安装
SVN服务器端下载地址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
下载的安装包点击安装即可。服务端安装好后软件会自动在系统的环境变量中增加相应的值,测试是安装完成可以在cmd命令行中输入“svn”或者“svnadmin”来测试能否运行。
第二步:部署存储库并运行服务端
建立SVN的存储库,路径以F:\SVNHome为例,创建完该文件后,就进行Windows的服务绑定,以便以后每次重启机器后都能自动运行,这里用到的是Windows自带的创建服务的命令sc,在命令行模式下执行:
sc create SVNService binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r F:\SVNHome" displayname= "SVNService" depend= Tcpip start= auto
注意这里的格式,“=”后面是必须空一格的,否则会出现错误。其中的几个路径分别是服务端安装路径和存储库的路径。
在提示建立成功后,可以直接输入“net start SVNService”来启动服务,或者可以直接在“管理工具”的“服务”中直接启动。
第三步:创建项目以及配置访问权限
进入到F:\SVNHome目录下,鼠标右键选择[TotoiseSVN]->[Create Repository href...]进行创建,创建之前保证该目录下没有任何的文件夹和文件。创建成功后会在里面自动生成几个文件夹:dav目录是提供给Apache与 mod_dav_svn使用的目录,让它们存储内部数据;db目录就是所有版本控制的数据文件;hooks目录放置hook脚本文件的目录;locks用 来放置Subversion文件库锁定数据的目录,用来追踪存取文件库的客户端;format文件是一个文本文件,里面只放了一个整数,表示当前文件库配 置的版本号;conf存放的是配置文件;
访问权限的设置方法:
在conf目录下,用记事本打开svnserve.conf,设置如下:
[general]
anon-access = none
autn-access = write
password-db = passwd
第一个用来设置匿名用户的权限 none为设置存储库不允许匿名访问
第二个用来设置经过授权的用户的权限 write为可以写入
第三个用来指定授权用户的密码存放文件
在同一目录下打开passwd,也就是上面设置的,当然你也可以改成其他的文件名,设置如下:
[users]
user1 = pass1
这里就是指定授权访问用户名和密码,格式为:用户名 = 密码
多个用户就写多行,设置完之后就大功告成了。
接下去就可以开始使用TotoiseSVN进行Import、Update、Checkout、Commit等操作了。
初始化导渗透
下面就是将我们的数据(项目)导渗透到这个版本库,以后就由版本库管理我们的数据我们的任何改动都会被
版本库记录下来,甚至我们自己丢失、改错数据时版本库也能帮我们找往返数据
比如,我在 d:\wwwroot 下有个 guestbook 文件夹,里面存放的是我编写的留言簿程序在此文件夹上“
右键 -> TortoiseSVN -> Import...” ,在弹出对话框的“URL of repository”输渗入渗出
“svn://localhost/repos1/guestbook”在“Import message”输渗入渗出“导渗入渗出整个留言簿”作为注释
点 OK 后要求输渗透帐号我们在用户名和密码处都输渗透 test 完成后 guestbook 中的内容全部导渗透到了
svn://localhost/svn/repos1/guestbook
我们观到在 e:\svn\repos1 没有任何变化,连个 guestbook 文件夹都没有建立,唯一的变化就是
e:\svn\repos1容量变大了实际上我们源guestbook中的内容已经导渗透 repos1 版本库了,源 guestbook
文件夹可以删除了
需要注重的是,这一步操作可以完全在另一台安装了 TortoiseSVN 的客户机上入行例如运行svnserve的
主机的IP是133.96.121.22,则URL部分输渗入渗出的内容就是“svn://133.96.121.22”
取出(check out)
取出版本库到一个工作拷贝:
来到任意空目录下,比如在f分区建立一个空文件夹 f:\work “右键 -> SVN Checkout”在“URL of
repository”中输渗透“svn://localhost/svn/repos1/guestbook”,这样我们就得到了一份 guestbook 中内容的
工作拷贝
存渗入渗出(check in)/提交(commit)
在工作拷贝中作出修改并提交:
在 guestbook 工作拷贝中随便打开一个文件,作出修改,然后“右键 -> SVN Commit... ”这样我们就把
修改提交到了版本库,版本库根据情况存储我们提交的数据
在修改过的文件上“右键 -> TortoiseSVN -> Show Log” ,可以观到对这个文件所有的提交在不同的
revision 条目上“右键 -> Compare with working copy”,我们可以比较工作拷贝的文件和所选 revision 版
本的区别