SVN_SVN的基本认识
SVN是什么?
svn是Subversion的简称,是一个开源的代码版本控制系统,svn就是用于多人共同开发同一个项目,达到资源共用目的工具。
版本控制是什么?
版本控制(Revision control)是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。可记录每个版本的信息,方便问题追踪。同时版本控制还支持并行开发,可有效的提高开发效率
为什么要使用SVN?
1、项目备份方便,节省硬盘空间;
2、记录每个版本,方便追溯历史纪录。
3、多人协作开发,共享数据;
4、细节化的权限控制,便于管理员掌控项目整体
SVN基本操作认识:
1、 svn工作流程和架构图;
a) svn工作方式:

b) svn架构图:

2、 svn服务器、客户端的获取与安装:
a) 服务端:https://www.visualsvn.com/server/download/
b) 客户端:https://tortoisesvn.net/downloads.html
服务端默认端口号443或8443,安装完成后可以在C:\Program Files\VisualSVN Server\bin目录中找到VisualSVN Server.msc服务端图形化应用窗口程序
客户端TortoiseSVN-1.10.2.28392-x64-svn-1.10.3默认安装完成后,在文件夹中单击右键出现SVN Checkout...或TortoiseSVN后表示安装成功!【没有的话重启】
3、 svn服务器目录结构、用户和权限;
a) 目录结构:
i.Repositories 仓库:存放被svn管理的项目文件,可以存放源码,文档等;
ii. Users 用户:创建和编辑用户;
iii. Groups 权限组:创建和编辑用户组;
b) 创建仓库:
标准文件夹结构:
1)branches 分支:如果需要测试新技术,或者大范围修改,将主干代码拷贝到分支中进行,测试无误后可以合并到主干中
2)tags 发布:发布版本要放到tags中;
3)trunk 主干:主要开发目录;
c)创建用户:每个开发人员都需要拥有自己的svn账号;
d)创建组:为每个部门配置不同的权限,便于管理;
e)分配权限:在仓库或者目录中为用户/组分配权限;

4、svn常用操作:
a)checkout 检出:初次下载 - 第一次连接svn服务器时候需要下载对应仓库的数据(如果仓库中有数据的话);
b)add 新增:新增数据到svn服务器;
c)update 更新:更新数据 - 检查svn服务器中的数据是否与本地的数据一致,如果不一致就下载改变/新增部分,同时不会删除本地数据;
d)delete 删除:删除svn的数据(需要搭配commit命令);
e)revert 回滚:将指定版本的代码回滚到本地,如要提交到服务器需要搭配commit命令;
f)代码冲突: 在多人同时开发一个类,提交的时候容易出现代码冲突,也可以理解为版本冲突;

g)其他操作:
i.下载指定版本号的文件;
ii.代码对比工具;
iii.账号保存与注销;
iv.按照版本检出;
SVN_SVN的基本认识的更多相关文章
随机推荐
- 怎样理解 Vue 的 "Hello, World!" 代码?
直接复制以下代码到 html 文件中即可运行. <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...
- NYOJ 石子合并(一) 区间dp入门级别
描述 有N堆石子排成一排,每堆石子有一定的数量.现要将N堆石子并成为一堆.合并的过程只能每次将相邻的两堆石子堆成一堆,每次合并花费的代价为这两堆石子的和,经过N-1次合并后成为一堆.求出总的代价 ...
- 面试常考的js题目(二)
1. 已知 fn 为一个预定义函数,实现函数 curryIt,调用之后满足如下条件: 返回一个函数 a,a 的 length 属性值为 1(即显式声明 a 接收一个参数) 调用 a 之后,返回一个函数 ...
- 使用.netcore部署window服务完成过程(使用nssm,Topshelf)
一,新建.netcore控制台应用程序.本文使用.netcore2.2版本,结构如下 二,negut引用Topshelf.Log4Net,Topshelf 三,代码如下:1>Program.cs ...
- Bootstrap页面响应式设计
关键词:viewport.栅格布局.媒体查询(Media Queries) 一.关于栅格布局的说明: 1.基本图解 extra small devices phones 超小型设备手机small d ...
- 把json1赋值给json2,修改json2的属性,json1的属性也一起变化
let json1 = { a: 1}let json2 = json1json2.a = 5 console.log(json1.a) // 5 console.log(json2.a) // 5 ...
- 不错的abap技术网站
http://www.saptechnical.com/index.htm https://sapcodes.com/
- Java高并发程序设计学习笔记(八):NIO和AIO
转自:https://blog.csdn.net/dataiyangu/article/details/87214773 什么是NIOBuffer && ChannelBuffer举个 ...
- odoo 字段组件
每个字段类型都会使用相应的默认组件在表单中显示.但还有一些替代组件可以使用.对于文本字段,有如下组件: email用于让 email 文本成为可操作的”mail-to”地址 url用于将文本格式化为可 ...
- remote mounting from windows to linux
8 Ways To Mount SMBfs (SAMBA FILE SYSTEM) In Linux. Sep 8, 2009 How to Mount smbfs (SAMBA file syste ...