SVN版本控制系统的使用
SVN版本控制SVN简介1、什么是SVNSVN logo SVN是Subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。1 SVN在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。Ap
SVN版本控制
SVN简介
1、什么是SVN
SVN是Subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。1
SVN在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。
SVN的核心是版本库,在版本库中,存储了需要进行版本控制的所有数据,版本库按照文件树的形式存储数据,包括文件、目录等。SVN还会记录每一次的更改,不仅针对文件也包括目录本身,包括增加、删除和重新组织文件和目录。当一个客户端从版本库读取数据时,通常只会看到最新的版本,但是客户端也可以去看以及对以前的任何一个版本进行查看或更改。
2、SVN版本控制工具
1、服务端
- SVN服务端常用的软件为VisualSVN Server
2、客户端
- SVN客户端常用软件TortoiseSVN,俗称小乌龟。
- SVN客户端软件SlikSVN,命令行操作。
SVN相关软件安装及中文界面安装见 版本控制软件的安装
版本控制操作
SVN版本控制的客户端可以选择命令行和图形界面两种,在命令行中操作,避免不了的会用到很多操作命令,一下列出部分常用的操作命令
SVN常用指令
命令(简写) | 格式 | 含义 |
---|---|---|
checkout(co) | svn co URL | 检出URL仓库 |
update(up) | svn up | 从服务器更新 |
add | svn add 文件名 | 增加文件 |
status | svn status | 查看工作副本状态 |
rm | svn rm 文件名/目录名 | 删除文件/目录 |
diff | svn diff 相关指令 | 可进行两文件、版本、tag等的对比 |
commin(ci) | svn ci -m “log” | 提交,并保存提交说明log |
log | svn log 相关命令 | 查看相关log信息 |
tag | svn cp . (tag) URL | 新增tag标签 |
revent | svn revent 文件名/目录名 | svn还原文件/目录及目录下的文件 |
cleanup | svn cleanup | svn清理操作 |
help | svn help | 查看svn帮助 |
… | … | … |
svn图标重载
在开发者进行工作副本的开发时,经常需要知道那些文件经过修改/删除/增加等操作,这时svn的图标重载就显得很重要了。
在TortoiseSVN设置的图标集中可以看到如下图的图标信息具体的图标含义可见TortoiseSVN帮助手册的4.7节
1、创建版本库
版本控制URL
创建SVN版本库时会有本地和远程两种方式,本地一般都为 file:// 开头,若是使用VisualSVN建立,或在远程的SVN托管平台便由采用的协议决定。
各方式创建版本库后访问的差异
方案 | 访问方式 |
---|---|
file:// | 直接本地版本库访问(本地磁盘或网络磁盘) |
http:// | 通过 WebDAV 协议访问支持 Subversion 的 Apache 服务器 |
https:// | 与 http:// 相似,但是用 SSL 加密。 |
svn:// | 通过未认证的 TCP/IP 自定义协议访问 svnserve 服务器。 |
svn+ssh:// | 通过认证并加密的 TCP/IP 自定义协议访问 svnserve 服务器。 |
创建本地版本库
使用TortoieSVN创建
-
1、找到安装SVN时,保存版本库的位置,如果没有更改名称的话一般为Repositories名;
-
2、在Repositiores内新建文件夹用于保存版本库;
-
3、新建版本库
3、完成版本库新建
使用VisualSVN创建
VisualSVN适合企业内部使用,在同一局域网或共有网络服务器,可以实现多人合作开发。
- 1、右键Repositores选则Create New Reposiyory
在上图的5中可以选中新建空的版本库和新建标准版本库(包含主干、分支、标签三个文件夹),在上图的6中可以选择那些成员的权限,根据自己需要自行设置。
新建版本库完成之后便可在本台电脑上任意空文件夹位置检出工作副本。
在具有版本控制的文件夹右键会出现下图的SVN功能列表
由于刚选择的是新建标准的SVN版本库,所以SVN自动新建了三个目录,其中trunk为“主干”,branches文件夹用于保存分支副本,tag文件夹用于存放标记副本,类似于备份。如果一个版本库只管理一个项目,通常使用这种方式进行。
创建远程版本库
这里使用gitee进行新建。这里有个好处就是不用在本地安装SVN服务器软件,直接用web服务即可,适合不在同一局域网或没有共有服务器的情况进行版本库的建立。
- 1、新建Gitee账户;
- 2、登录之后即可新建仓库;
- 3、选择SVN控制
- 4、创建本地副本
新建文件夹用于保存本地副本,复制Gitee的版本库URL,在本地文件夹进行检出,初次检出需要登陆Gitee账户,登录之后即可完成检出。
2、修改文件并推送至服务器
对本地文件进行修改后保存可看到被修改的文件上显示感叹号。
右键选择svn提交,输入提交信息,选择提交的文件(自动选择),之后确定即可。
在服务器即可看到对文件的更改。
推送至VisualSVN本地服务器步骤与推送至远程服务器相同。
3、创建分支/标签
当在项目中需要在某个版本后进行多方向的开发,就会用到分支操作,SVN创建分支步骤如下:
选择分支/标记后输入路径,这里需要注意保存分支的路径,可以通过后面三个点进行选择,之后输入文件夹名,并选择左下角新建文件夹,填入日志信息,选择需要从哪个版本进行复制,点击确定即可。
之后在branches文件夹更新即可看到分支1
也可以在版本分支图看到分支的具体情况。
SVN版本控制资料:
TortoiseSVN帮助手册2
🎈
🌹
😶
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)