目录结构:

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. 15款美丽的设备模板,帮助展示你的 APP

    有什么更好的方式来显示您的应用程序的外观和感觉呢?你看了这些设计示例之后就会有灵感了.无论是在 iPhone,iPad,Android,还是在桌面应用程序或网站,这些设计都增加了一些视觉上的吸引力,并 ...

  2. javascript使浏览器关闭前弹出确认

    当用户关闭页面时,弹出对话框,让用户确认是否关闭,选择确定则页面关闭,否则页面不关闭. 效果体验:http://keleyi.com/keleyi/phtml/js/index.htm 完整代码: & ...

  3. go语言 类型:数组

    在go语言中数组array是一组特定长度的有序的元素集合. go的数组类型由两部分组成——类型和长度,二者缺一不可.数组本来就是一块存储相同类型元素的连续内存空间,因此决定一个数组的类型,必然需要决定 ...

  4. [Android]官网《Testing Support Library》中文翻译

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5048524.html 翻译自 Android Develope ...

  5. Android Animation学习(五) ApiDemos解析:容器布局动画 LayoutTransition

    Android Animation学习(五) ApiDemos解析:容器布局动画 LayoutTransition Property animation系统还提供了对ViewGroup中的View改变 ...

  6. 使用cocoaPods一键集成第三方登录(新浪微博,qq,微信)

    第三方登录是现在app很常用的功能,而这个功能我已经写过两三次了...每次都写大同小异的代码真的是很痛苦,而且每次都要根据说明去添加那些依赖库,配置linkFlag什么的,完全是体力活,所以一直想把这 ...

  7. Android 短信验证码平台

    1.容联云通讯 (目前只支持国内.收费) http://www.yuntongxun.com/ 2.bmob (目前只支持国内.收费) http://www.bmob.cn/ 3.阿里大鱼(目前只支持 ...

  8. Android SurfaceView的生命周期

    本文利用SurfaceView来实现视频的播放 本文地址:http://www.cnblogs.com/wuyudong/p/5851156.html,转载请注明源地址. 在main.xml布局文件添 ...

  9. Xcode插件

    Xcode插件-2016-03-10Xcode插件管理神器 —— Alcatraz 说明 Alcatraz是一个管理Xcode开源包的,你可以用它查找安装你想要的插件,模板以及配色方案,而你无需手动克 ...

  10. Oc中的数组

    ========================== 数组 ========================== 一.认识数组 oc中可以把NSObject对象的子类放到数组这个集合中,但是int.f ...