SVN版本控制工具
一、SVN概述
SVN版本控制工具可以帮助我们解决那些问题:
SVN是subversion的缩写。
SVN用于管理整个开发过程中的源码,用于版本控制。
二、SVN的简单应用
SVN是基于服务器和客户端的这种模式的,其基本原理如下:
svn从服务器上下载代码,一个是checkout,一个是update。
checkout:首次连接服务器仓库时,需要把服务器上的代码同步到本地;
update:后续想要从服务器上下载代码,执行更新操作,检出只做一次,后续都是更新。
commit:项目中的源代码下载后,需要修改里面一部分代码,修改完成后需要提交到服务器上去。
SVN的工作模式:
复制-修改-合并:subversion默认的模式,在这种模式里,每一客户读取项目配置库建立一个私有的工作副本-版本库中项目的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起,称为最终的版本,但最终需要人工去确定正误。
锁定-修改-解锁:在一个时间段内配置库的文件只允许一个人修改。此模式不适合软件开发工作。
三、SVN的安装
SVN在安装时,根据不同的场景,需要分别安装服务端和客户端。
服务端:VisualSVN Server Manager
客户端:TortoiseSVN
小TIP:.msi是微软格式的安装包。一般是程序的安装软件。XP下可以直接运行安装。
四、SVN客户端的使用
1.从服务器上检出项目
我们首次进入公司,接触一个新的项目时,项目老大会给你这个项目的主干路径,我们需要在计算机本地上创建一个新的文件夹用来存放这个项目的代码。
步骤:
1.在建好的文件夹下右键鼠标,选择SVN Checkout(注意:检出只做一次,后续都是更新);
2.在弹出的窗口中,设置要检出的目录,检出的本地路径,是否检出所有子目录,是否检出最新版本;
3.点击OK后会弹出输入用户名密码窗口,可使用Save authertication保存用户名和密码;
4.导出结束后会出现一个.svn结尾的隐藏文件,用来记录版本信息,不能删除,否则无法进行版本控制。
2.将新增的文件添加到SVN的管理中
1.右键文件,TortoiseSVN下Add;
2.此时文件上出现蓝色加号,代表文件已经添加到SVN管理中,但还未上传到服务器上去;
3.右键蓝色加号的文件,选中SVN commit,在弹出的窗口中填写要提交的日志,选择要提交的文件,点击OK;
4.结束后文件上有绿色对号,说明文件已经提交到服务器上。
3.从服务器上更新代码
1.需要在检出目录中,右键SVN Update;
2.点击OK,新出现的文件上面带有绿色对号,证明代码同步完毕。
4.更新本地代码到服务器上
1.更改本地代码后,文件上会出现红色感叹号;
2.右键此文件,选择SVN Commit,记录日志,即可提交完毕。
温馨提示:写代码之前,要养成一个好习惯,那就是先更新,再写代码,因为你不能保证你现在的代码是不是最新的,所以说你做的第一件事就是更新,否则的话,极有可能出现代码冲突的问题。
5.文件日志信息的查看
共有两种方式,如下:
第一种:
1.检出目录下,右键TortoiseSVN,选择Repo-browser;
2.选择要查看的文件;
3.右键TortoiseSVN Show log。
第二种:
1.直接在本地选中要查看日志的文件;
2.右键,TortoiseSVN Show log。
6.恢复到历史版本
在上面查看文件日志的前提下,选中要恢复到的版本,右键,Update item to revision
7.版本冲突问题
对于同一个文件,当有两个或两个以上的人对其进行修改并提交时,就会产生版本冲突。
对于版本冲突的文件,svn会在同一目录下存放三个文件,冲突文件上会带有感叹号标识。
解决方式:
1.右键感叹号文件,tortoiseSVN-Edit conflicts;
2.右键冲突部分,选择四种保存文件的方式;
3.右上角保存,Mark as resolved;
4.提交文件到服务器。
8.清理认证缓存
在使用SVN时,选择了Save authertication时,当我们想要更换用户时,可以采用如下方法:
1.在svn检出目录,右键tortoiseSVN- settings;
2.在弹出窗口中选择Saved Data,在右侧点击Clear all;
3.最后点击确定按钮。
提示:
当我们更新某个文件时,提示需要clean up,直接clean up可能会失败,需要使用cmd运行窗口,进入当前目录,执行svn cleanup命令。