目录结构:

1. SVN服务器搭建和使用-VisualSVNServer

2. SVN客户端安装和使用-TortoiseSVN

3. TortoiseSVN使用方法

SVN简介

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的

一:SVN服务器搭建和使用。

   1.  下载和搭建SVN服务器并添加版本库

下载:http://subversion.apache.org/packages.html

进入网址后,浏览器最底部看到如下截图:

点开上面的VisualSVN连接,下载VisualSVN server安装完成后,启动VisualSVN Server Manager,如图 :

现在开始创建版本库Rong,右键单击窗口的Repositores,如下图:

在弹出的右键菜单中选择Create New Repository或者新建Repository:

勾上Create default structure复选框后Rong目录下自动创建了3个文件夹,branches,tags,trunk

三个目录初识:

trunk目录

主干目录,一般情况下是在此目录下进行代码的开发,这个目录应该存放最新的代码。实际开发中我是在branches建立开发分支进行开发,然后将最新代码合并到此目录。

tags目录

代码的版本标记,这个目录的代码不允许更改,比如,软件发了1.0版本,就需要将1.0版本的代码在tags中放一份拷贝,发了2.0,就要在tag中标记一个2.0。如果1.0软件出现了bug,开发人员要验证bug,直接从tag中取1.0版本的代码就可以了,不会把个个版本混淆。

branches目录

分支目录,用于开发新功能或解决老版本的bug。比如,1.0版本上线,开发人员全力投入2.0版本的开发,但是,1.0版本突然出现了一个bug必须要修复,而且很紧急,不能等到2.0版本上线,这时候该怎么办呢。正确的做法是,从tag中取1.0版本的代码,建立一个新的分支,开发人员在这个分支上解决1.0发现的bug,解决完成并测试通过之后,在tag中添加一个新的版本标记,比如1.1,然后关闭这个分支。如果1.1再出现bug,那么从1.1建立分支,以此类推,直到2.0出现。

    2. 需要建立用户和组,并且需要分配权限。

a. 创建用户,在VisualSVN Server Manager窗口的左侧右键Users,选择Create User

b. 建立用户组,在VisualSVN Server Manager窗口的左侧右键Groups,选择Create Group,如图:

接下来我们需要给用户设置权限,在Rong上单击右键,选择属性,如图:

在弹出的对话框中,选择Security选项卡,点击Add按钮,选中指定用户组或用户,然后添加进来,权限设置为Read/Write, 这里我们不使用用户组直接指定用户,如下图:

设置权限后,只有指定组或指定用户对这个项目有相应的读写权限,这里只有test对Rong有读写权限。在实际使用中组和用户可以灵活使用,可以给项目指定对应的用户也可以指定相应的组。
到这里svn服务器端已经搭建完成,我们从下载安装一直到添加版本库Rong=>trunk,branches,tags目录

二:SVN客户端安装和使用

1. 下载TortoiseSVN进行安装

下载: http://tortoisesvn.net/downloads.html

以下是我下载的svn相关安装包,可以公众号CodeL留言获取:

上面的VisualSVN很好用,VisualSVN是SVN的客户端,和Visual Studio集成在一起,安装后在vs中就可以实现提交,更新及其他操作,如下图。

继续回到svn客户端安装,安装完成后,右键就可以看到如下:

 

2:checkout项目文件。   在本机某个目录下,右键 Svn Checkout (检出):

其中URL可以在SVN服务器获取到,在Rong目录右键

将复制的版本库URL粘贴上,如下图:

点击【ok】按钮后,就可以检索出来检出的时候会提示输入用户名和密码,就是在服务端创建的user的用户名和密码。
到这里 svn从服务器到客户端的搭建已经完成,并且我们已经将对于的版本库检出到本机上,剩下的就是学习TortoiseSVN的相关使用方法

三:TortoiseSVN使用方法
 如图,红色矩形框标记的都是一些比较常用的命令

  1. update 表示更新,默认更新到svn服务器上的最新版本
  2. commit 提交操作,提交对文件的修改
  3. resolve 已解决的,用于处理冲突
  4. revert  恢复,撤销对文件的更改(只能撤销未提交的修改)
  5. clean up  清理操作,用于处理一下被锁定的情况
  6. merge  合并
  7. add   添加,未加入版本控制的文件默认会有一个问号,可以通过add添加到版本控制

这里只大致描述一下,具体使用请结合实际多实践操作,如果您懒得下载,也可以在公众号CodeL留言发给你。

关于svn的使用这些文章都讲的很详细:

http://www.cnblogs.com/armyfai/p/3985660.html

http://www.cnblogs.com/xiaobaihome/archive/2012/03/20/2408089.html

SVN服务器&客户端的搭建和使用的更多相关文章

  1. 如何创建 SVN 服务器,并搭建自己的 SVN 仓库 如何将代码工程添加到VisualSVN Server里面管理

    如何创建 SVN 服务器,并搭建自己的 SVN 仓库,附链接: https://jingyan.baidu.com/article/6b97984dca0d9c1ca3b0bf40.html 如何将代 ...

  2. 【转】SVN服务器客户端以及环境的搭建和使用

    vss,cvs,svn三者都是版本控制工具 vss是锁定-编辑-解锁模式,svn虽然也支持锁定,但默认是修改-冲突-合并模式 vss的版本号对应的是单个文件,svn的版本号对应的是整个版本库 vss是 ...

  3. centos7 搭建svn服务器&客户端的访问&备份迁移

    当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用: 使用环境:虚拟机为centos7系统,svn服务器安装在centos7系统平台上,s ...

  4. Mac下SVN服务器环境的搭建和配置(除展示图片外,所有命令在Linux/Unix下适用)

    这几天领导没有安排工作,闲着没事就想把自己这两年做iOS开发时感觉知识有欠缺的地方想好好深入地补习一下,昨天和今天就计划好好学习下SVN和git的从创建和到原理,到命令,到界面的使用.一不小心被另一领 ...

  5. 如何创建 SVN 服务器,并搭建自己的 SVN 仓库

    SVN是一个广泛使用的版本控制系统,在日常工作中有广泛的应用空间,比如文档管理,我们就可以搭建一个 SVN 仓库,日常需要归类保存的文档统统上传到仓库中,那如何创建 SVN 服务器, 又如何搭建 SV ...

  6. 【SVN】SVN服务器的本地搭建和使用

    Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上了,下载地址: http:// ...

  7. SVN服务器的环境搭建(图文并茂)

    SVN服务器的搭建与使用 本章读完,就可以创建代码版本库,传送门 https://www.cnblogs.com/zzpython/p/13348009.html TortoiseSVN 是 Subv ...

  8. svn使用---在CentOS 7上搭建SVN服务器 及windows搭建svn步骤

    svn搭建方法: https://blog.csdn.net/helijie92902/article/details/51935122?foxhandler=RssReadRenderProcess ...

  9. SVN服务器+客户端安装和配置

    先安装客户端.然后安装语言包,然后去小乌龟svn里设置语言为中文. svnServer推荐 subversion和 VisualSVN 网盘下载 TortoiseSVN客户端         汉化包网 ...

随机推荐

  1. html 网页文本设计

    1.文本的排版 1.1 <body> <h2>李白</h2> <p align="center" > <font face=& ...

  2. 【经验之谈】前端面试知识点总结(HTML相关)——附答案

    目录 一.HTML部分 1.浏览器页面有哪三层构成,分别是什么,作用是什么? 2.HTML5的优点与缺点? 3.Doctype作用? 严格模式与混杂模式如何区分?它们有何意义? 4.HTML5有哪些新 ...

  3. 自定义easyui整数或者数字、字母或者下划线验证方法

    $.extend($.fn.validatebox.defaults.rules, { intOrFloat: {// 验证整数或小数 validator: function (value) { re ...

  4. Maven发布工程到公共库

    1.发布工程 新建一个 Maven build 选择要发布的工程

  5. HTML <base> 标签 为页面上的所有链接规定默认地址或默认目标

    定义和用法 <base> 标签为页面上的所有链接规定默认地址或默认目标. 通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白. 使用 <base& ...

  6. 【代码笔记】iOS-时间选择框

    一, 效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewControlle ...

  7. socket编程中服务器端常用函数 以及简单实现

    1 常用函数 1.1   socket() int socket(int family, int type, int protocol); socket()打开一个网络通讯端口,如果成功的话,返回一个 ...

  8. iOS 学习 - 11.圆角(小于等于四个)类似气泡和计算字符高度

    使用贝塞尔曲线, // 小于四个角 圆角 -(void)setbor{ NSString *str = @" couldn't fit this all in a comment to @l ...

  9. 关于学习YYKit的记录

    <1>遇到的问题 <1>使用@[].mutableCopy创建可变数组 代码出处:YYKitDemo-> YYRootViewController 源代码:self.ti ...

  10. IOS开发之待探究随录

    设置导航条的问题