(1) 版本控制
  • 本地式

    • 大都是采用数据库记录文件的差异
    • 典型的有rcs,主要保存并管理文件补丁,根据补丁去计算各版本文件内容
    • 缺点:无法协同工作
  • 集中式
    • 通过一个单一的集中服务器去管理所有文件的修订版本
    • 典型的有CVS,Subversion,以及Perforce
    • 缺点
      • 宕机无法提交更新,无法协同工作
      • 服务器故障,丢失数据(单点故障)
      • 无法保存所有版本记录
  • 分布式
    • 客户端不只是提取最新的文件快照,而是将代码仓库完整的镜像下来
    • 典型的有 Git,Mercurial,Bazaar 以及 Darcs
    • 有点
      • 便于协同工作
      • 易于仓库恢复

(2) Git与其他版本控制系统的不同
    Git直接记录文件快照,而非差异比较
       
                                          其他版本控制系统                                                                                         Git

(3) Git的优势
  • 近乎所有的操作都再本地进行
  • 时刻保持数据完整性多数操作仅添加数据
    • Git 使用 SHA-1 算法计算出一个作为指纹字符串,来作为数据的唯一标识和索引

(4) 文件的三种状态
  • working directory(工作目录)
  • staging area(暂存区域)git repository(Git仓库)
    • 个人理解:暂存区域用来保存想丢失的文件,但是又不想立即提交的文件

(5) 几种安装
  • 源代码安装
  • Linux安装
  • Mac安装
  • Windows安装

(6) Git的工作环境变量
  • /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置

    • git config --system -l
  • ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户
    • git config --global -l
  • 当前工作目录中的 .git/config 文件
    • git config --local -l

(7) Git帮助
  • git help <verb>
  • git <verb> --help
  • man git-<verb>

1. ProGit-起步的更多相关文章

  1. [NodeJS] Hello World 起步教程

    概述: 做数据,免不了需要展示数据,数据可视化是必须经历的步骤. 本文将提供一个NodeJS的起步教程,是笔者这两天探索的小结. 正文:  1. 为什么使用NodeJS 究竟是以B/S还是C/S的架构 ...

  2. Node.js起步 -- (1)

    先来简单介绍nodeJS 我们知道JavaScript是运行在浏览器中的,浏览器为它提供了一个上下文(context),从而让JavaScript得以解析执行. nodeJS其实可以这么理解,它是另外 ...

  3. Linux上的SQL Server的起步

    我们知道,几个星期前,微软发布了在Linux上直接运行的SQL Server第一个公开CTP版本!因此,对我来说,是时候跨界在Linux上安装我的第一个SQL安装,这样的话,我就可以在Linux上折腾 ...

  4. Pro Git 第一章 起步 读书笔记

    Pro Git 笔记 第1章 起步 1.文件的三种状态. 已提交:文件已经保存在本地数据库中了.(commit) 已修改:修改了某个文件,但还没有提交保存.(vim) 已暂存:已经把已修改的文件放在下 ...

  5. 第二篇.Bootstrap起步

    第二篇Bootstrap起步 我们可以在http://getbootstrap.com下载bootstrap的文件 点击左边的download bootstrap可以下载bootstrap的css,j ...

  6. Android学习起步 - 新建工程及相关

    新手起步迷迷糊糊,以下记录迷惑之处,大家共勉!!! 1.创建安卓应用工程 选择Andriod Application Project 点下一步直到完成. 二.下面是新建工程注意的地方 (1)首选删除系 ...

  7. okhttp教程——起步篇

    okhttp教程--起步篇 这篇文章主要总结Android著名网络框架-okhttp的基础使用,后续可能会有关于他的高级使用. okhttp是什么 okhttp是Android端的一个Http客户端, ...

  8. DirectX API 编程起步 #01 项目设置

    =========================================================== 目录: DirectX API 编程起步 #02 窗口的诞生 DirectX A ...

  9. Windows程序设计(第五版)学习:第一章 起步

    第一章 起步 1,windows主要的三个动态库: kernel32.dll负责操作系统的传统工作,包括内存管理.文件输入以及任务管理等. user32.dll负责用户界面的操作,即所有窗口的管理 g ...

  10. [转载] Redis 起步

    转载地址:http://www.cnblogs.com/shanyou/archive/2012/01/28/2330451.html Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在C ...

随机推荐

  1. MAC OS下免费下载YouTube

    YouTube上有很多不错的视频,你感兴趣的视频除了可以加入自己播放列表之外,还可以将其下载到本地收藏起来.推荐这款软件“Xilisoft Download YouTube Video for Mac ...

  2. Java调第三方的webservice接口

    1.eclipse中add dynamic web project 2.选中项目右键new——> webservice ——> webservice client 在service def ...

  3. [leetcode]_Unique Paths

    题目:有一个m * n 的方格,如下图,一个小robot希望从左上角走到右下角,共有多少种不同的路线走法. 思路: 我的错误思路:全排列,从(0,0)走到(m - 1,n - 1)共需要往下走m-1步 ...

  4. spark-submit工具参数说明

    执行时需要传入的参数说明 Usage: spark-submit [options] <app jar | python file> [app options] 参数名称 含义 --mas ...

  5. Mysql导入导出 改密命令总结(笔记三)

    一.从数据库导出数据 注意这些语句的执行是在在没进入mysql命令行之前,在mysql命令行不行 C:\Windows\system32>导出命令 而不是 Mysql>导出命令 1.导出整 ...

  6. PHP 下载文件时自动添加bom头的方法

    首先弄清楚,什么是bom头?在Windows下用记事本之类的程序将文本文件保存为UTF-8格式时,记事本会在文件头前面加上几个不可见的字符(EF BB BF),就是所谓的BOM(Byte order ...

  7. appcan weixin 开发

    登录微信开放平台:https://open.weixin.qq.com/ 管理中心,创建移动应用,ps:创建应用需要审核,其中 应用包名 需与在线打包安卓时候的  自定义包名一致. 开放平台 应用申请 ...

  8. xml文件对应的DTD学习

    DTD文件: 1.DTD文档主要由(元素,属性,实体,PCDATA,CDATA) 2.声明一个元素:<!ELEMENT 元素名称 (元素内容)> eg: <!ELEMENT pers ...

  9. 【转】代码编辑器(二)-SynEdit

    在我去年的时候我就有这个了,而且这是我第二个第三方的控件(第一个是DevExpress),这个是专门做代码编辑器的.安装方法:点我. 安装成功了之后,会在Tool Palette看到两个:SynEdi ...

  10. 双栈排序(codevs 1170)题解

    [问题描述] Tom最近在研究一个有趣的排序问题.如图所示,通过2个栈S1和S2,Tom希望借助以下4种操作实现将输入序列升序排序. 操作a 如果输入序列不为空,将第一个元素压入栈S1 操作b 如果栈 ...