02~ 一步一步教你使用 SVN之SVN 的介绍
SVN的介绍
- 一.学习SVN的主要内容的介绍
1.基本操作:学习SVN有哪些基本操作
2.服务器端的安装配置:SVN中必不可少的2个环境之一,会在下面的课程中介绍服务器如何去安装和配置
3.客户端软件的使用:在实际开发中,使用客户端软件来操作SVN也变得很常见,也是项目经理或者技术总监经常会使用到的工具,主要是为了初始化项目,以及忽略一些不需要上传的文件,后面的课程会详细演示
4.与Xcode的集成:随着Xcode升级,目前xcode对svn的集成越来越好,后面的课程也会详细演示如何使用xcode来操作svn - 二.基本操作
1.通过下副图介绍SVN的基本操作

2.首先,观察该图中一共有4个角色
3.如果以类来区分的话,一共有两类角色,一类为左边的Server,另一类为右边的User
3.Server翻译过来为服务器,观察服务器左边有个SVN repository,翻译过来为SVN仓库
4.由此引出SVN的使用,首先要有个服务器,而服务器里面有个SVN的仓库,仓库是用来存放源代码来对源代码进行管理
5.如果user1想要服务器的源代码,那么需要将服务器的源代码下载到user1的本地,通过svn checkout命令
6.svn checkout:将服务器的代码完整的下载到本地
7.下载到本地后,user1就可以在本地进行开发,比如需要person类,dog类都可以进行相应的创建
8.创建完后仅仅是在本地,而服务器并没有这些代码,这个时候要上传到服务器需要通过svn commit 命令
9.svn commit :将本地修改的内容提交到服务器(包括添加的和修改的)
10.这个时候user2,或者user3,想要服务器的代码,只需要通过svn checkout命令就能将服务器最新的代码下载到本地
11.之后需要修改内容或者添加文件都可以在本地操作,需要上传的话,通过svn commit上传到服务器
12.那么这个时候,服务器的代码就是user2或者user3上传的最新代码user1想要拿到服务器最新的代码需要通过svn update
13.svn update:将服务器最新的代码下载到本地(如果本地没有该文件则下载该文件到本地,如果有文件,就下载没有的代码到本地)
14.对于上述操作掌握之后,就基本的掌握了svn的基本操作
15.提醒:
*每天下班前commit "可运行版本":写了一天的代码了,本地存了很多的代码,这个时候一般情况下需要提到服务器进行共享,因为项目经理可以通过提交信息间接的知道你今天都做了哪些事情.这里需要注意的一点是要提交一个可运行的版本,如果提交的command +B编译错的版本,这个时候如果其他同事更新也会把错误的版本更新到本地,就会造成编译报错,就没有办法继续开发了,只有你这里修改到可运行的版本,之后同事再更新,这会大大的浪费时间,并且降低工作效率
*每天上班前update前一天所有的代码:一般在第二天上班都会把前一天的代码更新到本地,因为在前一天,一般都会将所有的代码提交到服务器,那么第二天在开始工作前最好将服务器最新的代码下载到本地
- 三.官方SVN介绍(官方图较为简洁,理解最好以上副图为准)
1.通过下副图介绍SVN的基本操作

2.这里有2类角色,一个repository(仓库),一个client(开发者)
3.最左边,开发者想要将代码提交到服务器(通过write)相当于commit提交到仓库中
4.其他开发者想要最新的代码通过read(相当于update)更新到本地
- 四.使用环境(使用SVN必须得有2套环境)
1.服务器:
*作用:用于存储客户端的源代码
*安装:在window上面安装visual
SVN Server就可以了
*补充:一般情况下,公司里的开发人员不必亲自搭建服务器,一般由项目经理或者技术总监来做,但是我们也有可能会坐上这样的岗位,所以也会演示
2.客户端:
*作用:将本地的源代码上传到服务器,或者更新服务器的源代码到本地保持同步
*安装:可以在mac上面使用命令行
Versions(可以在MAC上使用的SVN客户端,对命令行封装,功能简洁易用)
cornerstone(可以在MAC上使用的SVN客户端,对命令行的封装,好用且功能强大,也目前用的最多的)
Xcode,随着xcode升级,xcode对SVN的集成越来越好,也可以使用xcode来操作svn,其实本质也是对命令行的封装
*而开发人员所属的就是操作客户端的角色 - 五.总结
这里主要是讲了SVN的基本操作以及使用环境,下面演示服务器的搭建
02~ 一步一步教你使用 SVN之SVN 的介绍的更多相关文章
- 一步一步搭框架(asp.netmvc+easyui+sqlserver)-02
一步一步搭框架(asp.netmvc+easyui+sqlserver)-02 我们期望简洁带前台代码,如下: <table id="dataGrid" class=&quo ...
- 一步一步教你如何在linux下配置apache+tomcat(转)
一步一步教你如何在linux下配置apache+tomcat 一.安装前准备. 1. 所有组件都安装到/usr/local/e789目录下 2. 解压缩命令:tar —vxzf 文件名(. ...
- 一步一步教你将普通的wifi路由器变为智能广告路由器
一步一步教你将普通的wifi路由器变为智能广告路由器 相信大家对WiFi智能广告路由器已经不再陌生了,现在很多公共WiFi上网,都需要登录并且验证,这也就是WiFi广告路由器的最重要的功能.大致就是下 ...
- 一步一步教你使用Git
一步一步教你使用Git 互联网给我们带来方便的同时,也时常让我们感到困惑.随便搜搜就出一大堆结果,然而总是有大量的重复和错误.小妖发出的内容,都是自己实测过的,有问题请留言. 现在,你已经安装了Git ...
- 使用WPF教你一步一步实现连连看
使用WPF教你一步一步实现连连看(一) 第一步: 问题,怎样动态的建立一个10*10的grid(布局) for (int i = 0; i < 10; i++){ RowDefinition r ...
- 一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app
一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app 转载 作者:jrainlau 链接:https://segmentfault.com/a/1190000005844155 ...
- Ace教你一步一步做Android新闻客户端(一)
复制粘贴了那么多博文很不好意思没点自己原创的也说不出去,现在写一篇一步一步教你做安卓新闻客户端,借此机会也是让自己把相关的技术再复习一遍,大神莫笑,专门做给新手看. 手里存了两篇,一个包括软件视图 和 ...
- 【Linux】一步一步学Linux——Unix发展史(02)
目录 00. 目录 01. 请参考Unix传奇 02. 03. 00. 目录 @ 本博客后面会更新 01. 请参考Unix传奇 链接: https://coolshell.cn/articles/23 ...
- 一步一步教你实现iOS音频频谱动画(二)
如果你想先看看最终效果再决定看不看文章 -> bilibili 示例代码下载 第一篇:一步一步教你实现iOS音频频谱动画(一) 本文是系列文章中的第二篇,上篇讲述了音频播放和频谱数据计算,本篇讲 ...
- 一步一步教你实现iOS音频频谱动画(一)
如果你想先看看最终效果再决定看不看文章 -> bilibili 示例代码下载 第二篇:一步一步教你实现iOS音频频谱动画(二) 基于篇幅考虑,本次教程分为两篇文章,本篇文章主要讲述音频播放和频谱 ...
随机推荐
- Android NDK 开发(三)--常见错误锦集合Log的使用【转】
转载请注明出处:http://blog.csdn.net/allen315410/article/details/41826511 Android NDK开发经常因某些因素会出现一些意想不到的错误, ...
- OBD 14230 Slow, Addr激活
const u8 LinkCmd14230[6] = { 0xC2, 0x33, 0xF1, 0x01, 0x00, 0xE7 }; u8 ISO14230ADDR_Check(){ ...
- C#:屏幕显示区域问题
更改电脑屏幕显示的文字大小后,平面显示区域问题. /// <summary> /// 屏幕显示尺寸 /// </summary> public static Size Revi ...
- java中的内存一般分成几部分?
java中的内存被分成以下四部分: ①.代码区 ②.栈区 ③.堆区 ④.静态区域 栈区:由编译器自动分配释放,存放函数的参数值.局部变量的值等:具体方法执行结束后,系统自动释放JVM内存资源 ...
- ACM题目————小A的计算器
Description 以往的操作系统内部的数据表示都是二进制方式,小A新写了一个操作系统,系统内部的数据表示为26进制,其中0-25分别由a-z表示. 现在小A要在这个操作系统上实现一个计算器,这 ...
- raw_input() 与 input()
这两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同. >>> raw_input_A = raw_input("raw_inpu ...
- UpdatePane中弹出框
ScriptManager.RegisterClientScriptBlock(this.UpdatePanel21, typeof(UpdatePanel), "提示",&quo ...
- 从客户端中检测到有潜在危险的 Request.Form 值
今天在使用Kindeditor的时候,出现了如题的错误. 错误如图: 百度了下,艰难的找了原来是Framework的问题,原来用的2.0,后面变成了4.0,验证级别也更高了: 解决办法:在config ...
- laravel框架总结(二) -- blade模板引擎
## 1.基本用法 ##情形1 $name = laravel5 <div class="title"> {{$name}} {{$name}}</div> ...
- centos6.5用户管理
一.centOS6.5用户管理命令 useradd 新增用户 userdel 删除用户 passwd 修改用户密码 二.命令的使用 useradd useradd admin userdel us ...