• 《Pro Git》第1章 起步


    • 关于版本控制
      • 什么是版本控制:记录文件内容变化,将来可查阅特定版本修订情况的系统。
      • 版本控制演进
        • 1)本地版本控制系统
        • 2)集中化的版本控制系统(Centralized Version Control System)CVCS
          • 示例:CVS、Subversion、Perforce
          • 原理:有一个集中管理的服务器,保存所有文件的修订版本,通过客户端连到服务器,取出更新的文件或提交更新。
          • 缺点:中央服务器单点故障
            • 1)宕机1小时,1小时内无法提交更新
            • 2)中心数据库磁盘损坏,整个项目变更历史丢失
        • 3)分布式版本控制系统(Distributed Version Control System)DVCS
          • 示例:Git
          • 原理:与CVCS相比,客户端不仅仅提取最新文件,而是代码仓库完整镜像下来
          • 优点:服务器发生故障,可用任何一个镜像恢复
    • Git基础
      • 1)对待数据的方法:直接记录快照,而不是差异比较
        • 差异流
          • CVS、Subversion等保存项目状态时,是保存每个文件与初始版本的差异
        • 快照流
          • Git保存项目状态时,是对当时所有文件制作一个快照并保存快照的索引
      • 2)几乎所有操作都是本地执行
        • Git:绝大多数操作仅需访问本地文件和资源
          • 示例1)查看log:无需连服务器,直接本地读取
          • 示例2)版本差异:直接本地做差异比较
      • 3)Git保证完整性
        • Git中所有存储前计算校验和,然后以校验和来引用。SHA-A哈希。
      • 4)Git一般只添加数据
        • 快照提交到Git中,数据难以丢失
      • 5)3个区域和文件的3种状态
        • 3个区域
          • 工作区:
          • 暂存区:git add后文件保存到此区域,保存下一commit的文件列表信息
          • 本地仓库:git commit后文件保存到此区域
        • 文件的3中状态:
          • 已修改:工作区中文件做了修改,未git add到暂存区
          • 已暂存:已git add到暂存区,但未git commit到本地仓库
          • 已提交:已git commit到本地仓库
        • 基本git工作流程
          • 1)工作区中修改文件
          • 2)git add到暂存区
          • 3)git commit到本地仓库
    • 初次运行Git前的配置
      • Git配置
        • 每一级别覆盖上一级别的配置。
        • 系统级配置:
          • 1)/ect/gitconfig文件,含每一个用户及他们仓库的通用配置。
          • 2)命令使用前缀:git config --system
        • 用户级配置:
          • 1)~/.gitconfig或~/.config/git/config,只针对当前用户。
          • 2)命令使用前缀:git config --global
        • 仓库级配置:
          • 1)仓库目录中的.git/config,只针对该仓库
          • 2)命令使用前缀:git config
      • 配置用户信息
        • git config --global user.name "aa"
        • git config --global user.email "123@abc.com"
      • 检查配置信息
        • 1)检查所有配置:git config --list
        • 2)检查某一项配置:git config <key>,如git config user.name
      • 获取帮助
        • git help <verb>,如git help config
  • 相关阅读:
    jquery 获取当前元素的索引值
    JQuery中根据属性或属性值获得元素(6种情况获取方法)
    jquery如何获取某一个兄弟节点
    JAVA学习<六>
    JAVA学习<四>
    JAVA学习<三>
    iOS定位到崩溃代码行数
    Swift3.0基础语法学习<五>
    Swift3.0基础语法学习<四>
    Swift3.0基础语法学习<三>
  • 原文地址:https://www.cnblogs.com/yeyang/p/9291416.html
Copyright © 2020-2023  润新知