SVN的安装配置与使用
SVN 的安装配置与使用1 SVN安装配置 ..............................................................................
SVN 的安装配置与使用
1 SVN安装配置 ............................................................................................................... 2
1.1 安装 ................................................................................................................... 2
1.1.1 下载 . ................................................................................................................ 2
1.1.2 安装 . ................................................................................................................ 2
1.2 配置 ................................................................................................................... 3
1.2.1 复制文件 . ......................................................................................................... 3
1.2.2 模块加载 . ......................................................................................................... 4
1.2.3 SVN的版本库目录设置 . .................................................................................... 5
1.2.4 创建数据仓库 . .................................................................................................. 6
1.2.5 设置用户 . ......................................................................................................... 7
2 SVN的使用................................................................................................................. 10
2.1 基本操作 .......................................................................................................... 10
2.1.1 安装客户端 .................................................................................................... 10
2.1.2 建立工作区 .................................................................................................... 10
2.1.3 下载版本库 .................................................................................................... 10
2.1.4 修改版本库 .....................................................................................................11
2.2 其他操作 .......................................................................................................... 12
2.2.1
2.2.2
2.2.3
2.2.4 比较文件的不同之处 ...................................................................................... 12 查看日志 . ....................................................................................................... 13 查看版本树 .................................................................................................... 13 下载某个文件的旧版本 . .................................................................................. 14
2.2.5 重名名和删除文件 . ......................................................................................... 15
2.2.6 创建分支 . ....................................................................................................... 15
2.2.7 合并分支 . ....................................................................................................... 16
2.2.8 撤销修改 . ....................................................................................................... 17
1
,1 SVN 安装配置
1.1安装
1.1.1下载
(1)下载Apache :apache_2.2.14-win32-x86-openssl-0.9.8k.msi安装包(百度即可);
Apache 是提供http 服务的,相当于http 服务的代理软件,在没有与其他服务器软件相结合的情况下,只能解析html 文件,不能解析和编译jsp 文件。
(2)下载SVN :Setup-Subversion-1.6.6.msi 安装包(百度即可);
SVN 一般应该是指版本服务器,可以在apache 下配置。支付远程访问(外网访问),支持加密传输。远程访问对于不能集中开发的团队来说很重要,这样可以随时保持版本同步。
(3)下载TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi 安装包(百度即可); TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。
1.1.2安装
安装Apache ,SVN 和TortoiseSVN 都很简单,只要注意几点就行了。(我的安装目录:Apache 安装在“D:Apache2.2”下;SVN 安装在“D: Subversion” 下;TortoiseSVN 安装在“D:TortoiseSvn” 下。)
(1)安装apache
安装apache 一般来说直接点下一步就可以了, 在设置domain 以及host 的时候, 没有自己的域名可以设置为localhost,Email 填你自己的Email 。
注意:
安装时下面两个选择项:
for All Users,on port 80, as a Service --Recommended.
only for Current User, on port 8080, when started Manually.
意思是:
为所有用户安装程序和快捷方式,端口80,作为服务安装,推荐;
2
,仅为当前用户安装程序和快捷方式, 端口8080,启动apache 服务手动启动。 选择第一个注意80端口有没被占用,第二个则注意8080端口占用问题。 装好apache 以后, 这个时候, 它已经在运行了,
你可以在浏览器的地址栏输入http://localhost看看页面是否出现 It works!
出现则表明安装成功,没有出现,检查可能出现的问题。
如果是端口被占用
打开apache 安装目录下confhttpd.conf
找到:Listen 80
为防止端口号被占用我改成了: Listen 88
所以我访问的apache 时候路径就得跟端口号:http://localhost:88
(2)安装SVN
双击“Setup-Subversion-1.6.6.msi”,开始安装SVN 。这个简单,没有什么特别的,点击“下一步”安装就行了。
(3)安装TortoiseSVN
双击“TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi ”,开始安装TortoiseSVN, TortoiseSVN 的安装简单,一直下一步就行。
1.2配置
1.2.1复制文件
在D:Subversionbin目录下复制下面两个文件mod_authz_svn.so、mod_dav_svn.so粘帖到D:Apache2.2modules下;
3
,1.2.2模块加载
打开D:Apache2.2confhttpd.conf文件,找到: #LoadModule dav_module modules/mod_dav.so , #LoadModule dav_fs_module modules/mod_dav_fs.so 去掉前面的注释符号#
4
然后在这两段下面添加:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
注意不要随意改变顺序。可能出现其它错误。
1.2.3SVN 的版本库目录设置
设置SVN 的版本库目录, 以使我们的apache 能知道访问不同的URL 的时候, 它去哪里寻找这个URL 所对应的SVN 目录.
在D:Apache2.2confhttpd.conf文件最后, 增加如下内容:
DA V svn
SVNPath D:/svnroot/myproject
AuthzSVNAccessFile D:/svnroot/myproject/conf/access.auth
Satisfy Any
5
,Require valid-user
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile D:/svnroot/myproject/conf/users.auth
Require valid-user
上面使用了access.auth ,和users.auth 两个文件,我们后面创建。
1.2.4创建数据仓库
在D:创建svnroot 文件夹,然后通过svn 的svnadmin 命令创建数据仓库。 (注意:D:svnrootmyproject 这个路径是区分大小写的)
svnadmin create D:svnrootmyproject
如果运行成功的话, 什么也没有输出。
6
,1.2.5设置用户
在创建的myProject 文件夹下面我们会发现多了几个文件夹和文件, 打开conf 文件夹;
然后使用记事本打开svnserve.conf 文件, 找到如下行# password-db = passwd,然后把它前面的#去掉, 表示myProject 是需要密码验证的;
7
,再打开conf 文件夹下面的passwd 文件, 用文本编辑器打开, 在[users]下面加上我们需要的用户和密码, 比如:
[users]
admin=admin
tom=123
我们就启动了两个用户, 一个叫admin, 密码是admin, 一个叫tom, 密码是123. 然后保存为passwd 文件. 。
我们再建一个文件, 叫access.auth, 这个文件是设置访问权限的, 里面内容如下:
[myproject:/]
admin = rw
[myproject:/module1]
tom=rw
8
,admin=rw
rm 表示可读可写,这表示,myproject 下面的所有子目录admin 都是有权限读写的, 但是tom 只有权限读写此项目下面的module1目录, 这个各自的访问权限就分的更细致了。
命令行模式下,到apache 安装目录下的bin 目录下 操作如下
D: Apache2.2bin>htpasswd -cb users.auth admin admin
Automatically using MD5 format.
Adding password for user jam
D: Apache2.2bin>
为admin 用户设置好密码,创建第一个用户时创建文件,添加第二个用户则不用创建,具体命令参数有细微区别,请注意-cb
D: Apache2.2bin>htpasswd -b users.auth tom 123
9
,Automatically using MD5 format.
Adding password for user tom
D: Apache2.2bin>
此时把D: Apache2.2bin 目录下的users.auth 复制粘贴到
D:svnrootmyprojectconf 目录下
重新启动apache 服务,通过http://localhost:88/svn/myproject/
注:没改端口号的访问 (http://localhost/svn/myproject/)
访问出现
myproject - Revision 0: /
2 SVN 的使用
2.1基本操作
2.1.1安装客户端
在1.SVN 的安装配置中,已经安装了客户端TortoiseSVN 。安装成功后,右键单击鼠标会多出两个选项,分别是SVN checkout和Tortoise SVN。
2.1.2建立工作区
项目开始之前,在本地PC 的硬盘上,创建一个文件夹,文件夹命名随意(例如workspace ),该文件夹即作为软件开发者在项目开发过程中的工作区。
2.1.3下载版本库
假如现在开发一个项目,配置管理员会在服务端建立一个该项目的版本库test 在workspace 文件夹上,右键单击鼠标。选择SVN checkout,会出现如下
10