SVN简单使用入门
SVN概述
-
svn是Subversion的简称,它是一个开放的源代码版本控制系统,它提供了多人协作开发、代码存放、版本控制、权限控制的解决方案。简单来说,svn就是一套多人开发代码管理工具,利用它来完成我们的项目,实现code的服务器共享。
-
常见的代码管理工具主要有:集中式管理工具svn和分布式管理工具git,两者主要区别在于是否需要联网和是否有本地仓库管理code
SVN的使用原理
-
svn操作流程
-
checkout(检出)项目
-
增加文件或目录 ——> add(增加),commit(提交)
-
修改文件或目录 —— commit(提交)
-
删除文件或目录 ——> commit(提交)
-
更新文件或目录 ——> update(更新)
-
其中,checkout只进行一次,以后使用update更新即可。update、commit、add操作根据需要会经常使用。
-
SVN的使用
-
SVN是基于客户端/服务器
-
主要有两种方式:
- 复制-修改-合并方案(Subversion的默认方式)
- 锁定-修改-解锁方案
SVN的工作方式
SVN的服务器端
-
个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用
-
VisualSVN server 服务端:http://subversion.apache.org/packages.html
-
创建SVN仓库
- 右键点击Repository—>询问是否在本地磁盘创建仓库—>输入仓库名称—>(第一项是否创建空的仓库)—>(默认项对所有用户提供读写操作)
-
创建项目
- 点击刚创建的仓库—>新建(Project Structrue)—>输入项目名称—>(branche分支)(tags标签)(trunk主干)
-
创建两个用户练习SVN的使用
- 右键点击Users—>输入用户名和密码
- 也可以创建分组 右键点击Groups—>输入分组名—>点击Add将User添加到指定的组里
- 为创建的项目为组以及组的成员分配权限 右键点击刚创建的项目—>Properties—>Add选择添加组或者User—>同时下方有权限设置(只读、读写…)
SVN的客户端
- 在服务器端创建了仓库和项目之后,接下来我们将通过TortoiseSVN的使用,练习一下SVN的常用操作(检出只做一次,以后的只要更新即可保证和SVN服务器数据的一致性)
- 在桌面创建两个文件夹(aa)(bb)在文件夹内点击右键SVN Checkout—>公司会为你提供一个连接地址,将地址进行输入。
- 在aa中创建一个文件,比如test.java编写内容
- 右键点击文件选择TortoiseSVN—>add这样就交给SVN管理了(但是没有提交到SVN服务器上)此时文件会变成有个十字架的小图标
- 要想提交到SVN服务器上,我们需要右键点击文件选择SVN Commit此时会出现小对沟的图标
- 在bb端执行操作,右键点击SVN Update这样就可以保证数据和SVN服务器端的数据保持一直了。
- 之后的的每次修改之后我们则可以直接选择SVN Commit
- 而我们在每次对数据进行修改的时候我们,首先要养成先保证和SVN服务器端数据一致的好习惯(首先要SVN Update数据的更新操作)
SVN恢复到历史版本
-
我们可以浏览仓库(右键点击TortoiseSVN---->Repo-Browser)
-
我们还可以查看在日志(右键点击ortoiseSVN---->Show log)
-
我们要想恢复到历史版本,我们需要使用直接查看日志的方式(之后选中需要恢复的版本右击选择)
SVN解决冲突问题
-
冲突的原因,团队开发时候,我们大家都在进行代码的编写,但是总有先后提交之分,后提交的就要解决冲突的问题,不知道使用哪种方式进行合并或者选择。
-
冲突的错误提示
- 冲突之后的跟新,产生的问题
- 为了解决冲突更新,我们需要右键点击选项
Eclipse的SVN插件的使用
-
使用:
- 我们可以首先在服务器端首先创建一个仓库用于测试(Test)
- 在eclipse中创建一个项目(Eclipse的插件安装成功)
- 右击项目选择team—>Share Project—>创建新的资源库位置—>输入公司给你的地址(输入分配好的账户和密码)
- 此时项目呈现出都是小?,说明已经交给SVN管理了
- 提交到SVN服务器(右击项目team—>SVN commit)此时项目有小圆柱的图标(当然可此时在SVN服务器已经存在了,只不过我们看不到,毕竟不是当官的哈哈哈。。。)
- 当有新成员加入团队的时候,需要下载代码(通过Eclipse)首先会分配用户名和密码,然后再给一个资源库位置URL,
- 找到Eclipse的资源库研究位置打开—>新建资源库位置—>完成之后就会出现,SVN服务器上的资源项目
- 我们右击项目---->检出—>然后选择名称—>位置。(此时就可以和团队协作开发了)
- 之后就可以进行一系列的提交,更新了
-
解决冲突:
- 出现冲突
- 解决冲突