SVN版本管理工具的安装设置与使用
本文由发表于6年前 | J2EE | 暂无评论 |  被围观 9,943 views+
1、SVN介绍:2、SVN服务器的下载和安装:3、配置SVN资源库:4、创建资源库:5、配置资源库:6、启动SVN服务器程序:7、SVN客户端的下载和安装:8、SVN的一些基本操作:8.1、发布项目到服务器(Import):8.2、从服务器下载项目(Checkout):8.3、提交修改(Commit):8.4、同步本地文件(Update):8.5、添加文件和目录:8.6、删除文件和目录:8.7、查看文件或目录的版本变革:8.8、从以前版本重新开始:8.9、创建分支:8.10、沿着分支开发:8.11、合并分支:
1、SVN介绍:

对于需要许多基于互联网的开源项目,版本控制和版本管理很重要,即使是一个人开发,版本管理工作也很有好处,可以让你的工作条理清晰,避免许多重复工作。

svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。

2、SVN服务器的下载和安装:

在这个网址中:

http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=11151&expandFolder=11151&folderID=2627

找到Setup-Subversion-1.6.6.msi并下载,双击下载的Setup-Subversion-1.6.6.msi文件进行安装。

安装完之后,就会看到在系统变量path中添加了SVN的安装目录:D:\Program Files\Subversion\bin,这样就可以在cmd使用svn和svnadmin等命令了。

3、配置SVN资源库:

在磁盘上建立一个文件用于保存SVN的资源库。这里创建了D:/svnData作为资源库。

4、创建资源库:

在cmd中执行如下命令:

C:\Users\arthinking>svnadmin create D:/Java/svnData/svnTest

上面的指令在D:/Java/svnData目录下创建一个名为svnTest的资源库。

5、配置资源库:

在刚才创建的svnTest目录下的conf文件夹保存了SVN资源库的相关配置信息。打开conf目录下的svnsere.conf文件取消里面的两行注释:

anon-access = read
auth-access = write
password-db = passwd

第一句指定允许匿名用户读取该资源库

第二句指定允许授权用户对该资源库执行读取和写入操作

第三句指定使用passwd文件来保存用户名和密码

接下来在passwd文件中添加用户名和密码:

arthinking=123

上面表示增加用户名arthinking,密码123.

6、启动SVN服务器程序:

在cmd中输入:

C:\Users\arthinking>svnserve -d -r D:/Java/svnData

其中D:/Java/svnData表示资源库的保存位置。允许上面的语句即可启动SVN,SVN使用了3690端口,如果其他程序已经占用了,则SVN服务器启动失败。

也可以通过以下命名把SVN服务器程序安装此Windows服务:

C:\Windows\system32>sc create svn binPath= "D:/Program Files/Subversion/bin/svnserve.exe --service -r D:/Java/svnData" DisplayName= "Subversion服务" depend= Tcpip

上面的sc是Windows自带的Windows服务器配置程序,svn是服务器名。如果希望从Windows中删除该SVN服务,可以执行下面的语句:

C:\Windows\system32>sc delete svn
7、SVN客户端的下载和安装:

这里我们选择使用TortoiseSVN作为SVN客户端,在这个网站下载安装程序:

http://tortoisesvn.net/downloads.html

这里我们下了:TortoiseSVN-1.7.1.22161-win32-svn-1.7.1.msi。双击之后进入安装,安装后可以在右键单击文件夹菜单中看到这样的工具菜单:

8、SVN的一些基本操作:
8.1、发布项目到服务器(Import):

右击Web应用文件夹,在弹出的快捷菜单中选择:“TortoiseSVN –> Import…”,弹出发布处理对话框。在对话框的URL of repository中输入资源库的位置,如上面创建的svnTest的为:

svn://localhost/svnTest

单击OK。然后输入登录SVN的用户名和密码(如刚才在passwd文件中设置的arthinking和123)即可将项目发布到服务器。

8.2、从服务器下载项目(Checkout):

在想下载项目的目标磁盘空间的空白处单击鼠标右键。在弹出的快捷菜单中选择SVN Checkout,弹出下载对话框。在对话框的URL of repository中输入要下载的项目URL(如上面提交的则为:svn://localhost/svnTest),Checkout directory为保存下载项目的位置。

8.3、提交修改(Commit):

选中需要提交的文件或者文件夹,右击弹出的快捷菜单中选择SVN Commit,打开提交对话框。在Message中输入附加的修改注释,在Changes made中选择需要提交的文件,单击OK,然后输入验证用户名和密码即可提交。

8.4、同步本地文件(Update):

选中需要提交的文件或者文件夹,右击弹出的快捷菜单中选择SVN Update,进行同步处理。

8.5、添加文件和目录:

在客户端的工作空间中添加了文件之后,添加的文件并不会处于SVN的管理之下,为了让新建的文件处于SVN的管理,需要将该文件添加到SVN中:

选择需要添加的文件和文件夹,右击弹出快捷菜单选择“TortoiseSVN -> Add”进行添加。

上面只是把文件置入了TortoiseSVN的管理,还没有提交到服务器,为了添加到服务器还需要执行提交操作。

8.6、删除文件和目录:

首先是在客户端执行删除:

选择需要删除的文件,右击弹出快捷菜单选择“TortoiseSVN -> Delete”进行删除。

上面只是从TortoiseSVN管理下的本地磁盘中删除了该文件和文件夹,还没有提交到服务器。为了在服务器中删除还需要执行提交操作。

8.7、查看文件或目录的版本变革:

TortoiseSVN -> Revision graph

8.8、从以前版本重新开始:

TortoiseSVN -> Update to revision

8.9、创建分支:

选择需要创建分支的文件或者文件夹(这里选择Test.java),右击弹出快捷菜单选择“TortoiseSVN -> Branch/tag”菜单项,弹出Copy(Branch/Tag)对话框,在To URL中输入新的文件名(这里命名为Test_branch.java),点击OK进行创建。

8.10、沿着分支开发:

为了沿着分支开发可以先切换到分支所在的版本:

选中拥有分支的文件或者文件夹,右击弹出快捷菜单选择“TortoiseSVN -> Switch”菜单项,在弹出的Switch To Branch/Tag对话框中的To URL下来框中选择需要沿着开发的分支,这里选择Test_branch.java分支。

切换到Test_branch.java之后继续修改该文件,修改后提交,再次查看该文件的版本变革历史,则看到为下图2所示

8.11、合并分支:

为了合并分支,可按照如下步骤进行:

选择拥有分支的文件或者文件夹(这里选择Test.java),右击弹出快捷菜单选择“TortoiseSVN -> Merge”弹出merge type对话框,选择第一个,点击next;

弹出Merge revision range对话框,URL to merge from下拉框选择合并哪个分支(这里选择Test_branch.java),Revision range to merge选择合并到哪个版本,单击Next;

最后是Merge options对话框,默认选项进行合并。

除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/svn-version-management-tools-to-set-and-use-the-installation.html
关键字:
arthinking Java技术交流群:280755654,入门群:428693174 more
分享到:
 
2011 11/30
如果您有更好的原创技术博文或者观点,欢迎投稿:admin@itzhai.com,或者关注订阅左侧浮动面板的微信号订阅IT宅itread)发送消息。
文章评论
    没有评论
给我留言

有人回复时邮件通知我
J2EE的相关文章
随机文章 本月热门 热评
1 Java聊天软件 | Project 2011/11/14
2 Javascript笔记 – javascript中的函数 2012/5/22
3 jQuery中使用ajax对表单数据进行异步验证 2011/5/13
4 配置Maven项目自动编译 2014/12/9
5 Java基础笔记 – 对象的序列化和反序列化及其实现和使用 2011/10/23
6 Java动态代理之JDK动态代理和CGLib动态代理 面向切面编程AOP原理 2014/4/1
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
Mr.5's Life 白天是一名程序员,晚上就是个有抱负的探索者
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
猜您喜欢
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.