前言

我们都知道每一件工具的诞生都是为了方便我们的生活。SVN(Subversion)学习工具在我们“合作”开发软件过程中起到了很大的作用。说起SVN先说说SCM。

内容

SCM

定义

英文名字为(Supply ChainManagement)供应链关系管理:是一种集成的管理思想和方法,我自己的理解在软件开发过程中我们需要对软件开发做一个好的规划,可以采用这个思想和方法来指导我们去更好地开发。

开发有了好的思想和方法,但是需要什么工具呢?SVN就出场了,每一个工具的产生都是因为有这种或者那种需求。

SVN

定义

是一个开发源代码的版本控制系统,采用了分支管理,设计目标取代CVS。换句话来说就是:记录并控制软件产品数据的管理工具。

工作方式

开发软件的合作人员,不定时的对SVN服务器上的数据进行修改,提交。采用了事务的思想,SVN保证了修改代码的一致性,完整性。

功能

  • 统一版本号,任何一次提交都会对所有文件增加到同一个新版本号,即使提交并不涉及文本文件,版本号相同的文件构成了软件的一个版本。
  • 原子提交,不管提交多少东西,只要是一次提交,就是作为一个整体提交的,就更新一个版本号,当提交过程中发生中断的情况,不会损坏数据库的完整性。
  • 当重命名、删除、复制等操作都会保存在版本历史记录中。
  • 对于二进制文件,只保存和上一个版本的不同之处,减少了资源占用空间。

数据存储方式

存储版本数据有两种存储方式:一种是事务安全型表——BDB和一种不需要数据库的安全存储系统——FSFS,BDB在中断时容易锁住数据,所以用FSFS更加安全一些。

小结

  • 万事开头难,最难的地方也是最锻炼人的地方。
  • 一回生二回熟,多多百度,多多了解,多多实践。

感谢您的宝贵时间~~~

初识SVN的更多相关文章

  1. 软件配置管理中的SVN

    一.简单介绍 1.什么是软件配置管理 软件配置管理是指通过运行版本号控制.变更控制的规程.以及使用合适的配置管理软件.来保证全部配置项的完整性和可跟踪性. 配置管理是对工作成果的一种有效保护. 2.为 ...

  2. 【SVN】SVN初识

    SVN 介绍 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Sub ...

  3. SVN服务器&客户端的搭建和使用

    目录结构: 1. SVN服务器搭建和使用-VisualSVNServer 2. SVN客户端安装和使用-TortoiseSVN 3. TortoiseSVN使用方法 SVN简介 SVN是Subvers ...

  4. 单人SVN提交bug

    The working copy "初识tableVIew" failed to commit files. fatal: Unable to create '/Users/zjj ...

  5. 初识Eclipse!!

      Java之路 ——初识Eclipse   零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 ...

  6. git 入门教程之初识git

    初识 git git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 背景 我们都知道,Linus 在1991年创建了开源的linux系统,随着不断发展壮大,目前已发展成为最大 ...

  7. day03深浅拷贝、文件操作和函数初识

    一.赋值.浅拷贝与深拷贝 直接赋值:其实就是对象的引用(别名). 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象. 深拷贝(deepcopy): copy 模块的 deepcopy 方法, ...

  8. EnjoyingSoft之Mule ESB开发教程第一篇:初识Mule ESB

    目录 1. Mule ESB基本介绍 2. Mule ESB社区版和企业版 3. Mule ESB常用场景 4. Mule ESB软件安装 客户端安装 服务端安装 5. 第一个Mule ESB应用- ...

  9. Mahout In Action-第一章:初识Mahout

    1. 初识Mahout 本章涵盖以下内容: Apache Mahout是什么? 现实中推荐系统引擎.聚类.分类概述 配置mahout 读者可能从本书的标题中猜测到,本书是一本讲解如何将mahout应用 ...

随机推荐

  1. 七 Django框架,models.py模块,数据库操作——F和Q()运算符:|或者、&并且——queryset对象序列化

    F()可以将数据库里的数字类型的数据,转换为可以数字类型 首先要导入 from django.db.models import F from django.shortcuts import rende ...

  2. 一 Django框架介绍——用pycharm创建Django项目

    Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...

  3. Java钉钉开发_00_资源帖

    1.源码 本系列教程的源码已上传至GitHub:  https://github.com/shirayner/DingTalk_Demo 2.官方 官方源码:https://github.com/op ...

  4. C++之this指针与另一种“多态”

    一.引入 定义一个类的对象,首先系统已经给这个对象分配了空间,然后会调用构造函数(说明:假设存在构造函数--2010.9.5修正). 一个类有多个对象,当程序中调用对象的某个函数时,有可能要访问到这个 ...

  5. HDU5446 Unknown Treasure(组合数膜合数-->Lucas+中国剩余定理)

    >On the way to the next secret treasure hiding place, the mathematician discovered a cave unknown ...

  6. px-rem自适应转换(进阶@rem:40rem; )

    接力之前的文章 https://www.cnblogs.com/leshao/p/5674710.html 这篇文章讲解的是px -rem 单位换算 除100的  写法 比如实际测量PSD宽度是500 ...

  7. Excel文本获取拼音

    [说明] 版本:Excel 2010 文件后缀:.xls 有在.xlsb文件下使用未成功.建议使用.xls后缀. 1.调出“开发工具” 步骤:文件-->选项-->自定义功能区-->勾 ...

  8. Core Data存储数据出错(This NSPersistentStoreCoordinator has no persistent stores (unknown))

    Core Data存储数据的时候崩溃,崩溃信息: reason: 'This NSPersistentStoreCoordinator has no persistent stores (unknow ...

  9. Git 权限控制

    除了 Git 命令,权限控制也是 Git 中极为重要的组成部分,本文主要介绍 GitLab 系统提供的最常用的权限控制功能. 一.分配成员角色 首先来了解下,Git 中的五种角色: 每一种角色所拥有的 ...

  10. POJ3126Prime Path(BFS)

    #include"cstdio" #include"queue" #include"cstring" using namespace std ...