• Git学习系列 (一)


    打算花一个半月的时间学完Git。宏观上有更深的认识。

    参考:

    Pro Git(中文版)

    一、历史

    本地版本控制系统

    最原始的做法。复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。

    缺点:无法撤消恢复。无法协同工作。

    集中化的版本控制系统

    为解决多人协同工作,出现了集中化的版本控制系统( Centralized Version Control Systems,简称 CVCS )

    代表:CVS,Subversion 以及 Perforce 等

    原理:使用单一的集中管理的服务器,保存所有文件的修订版本

    缺点:一旦中央服务器出现故障,所有人无法提交更新,有丢失所有历史更新记录的风险

    分布式版本控制系统

    为解决上面的问题,于是出现了分布式版本控制系统( Distributed Version Control System,简称 DVCS )

    代表:Git,Mercurial,Bazaar 以及 Darcs 等

    每个客户端都存有一份完整的代码仓库,就算中央服务器发生故障,可以用任何一个本地仓库恢复。

    关于仓库的概念,下回分解。

    二、Git基础

    Git 和其他版本控制系统的主要差别在于,Git 只关心文件数据的整体是否发生变化,而大多数其他系统则只关心文件内容的具体差异。

    Git 并不保存这些前后变化的差异数据。实际上,Git 更像是把变化的文件作快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照的索引。

    其实的优点,即使不联网,我们也可以在本地提交,等到联网的时候再push到远程服务器上。

    在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。

    三、安装

    安装git非常简单,在Ubuntu上面直接运行

    sudo apt-get install git

    Windows上要安装http://msysgit.github.com/

    四、配置

    git config --global user.name "John Doe"

    加--global   表示全局

    加--system 表示系统级

    这是一个优先级的问题,如果项目中没有设置username信息,就会使用全局的设置,如果没有设置全局变量则最后使用系统级的设置。

    全局配置信息是个文件,Windows下,存放在家(HOME)目录的隐藏文件.gitconfig中。

    最后

    介绍一个非常有用的命令。

    要检查已有的配置信息

    git config --list
  • 相关阅读:
    【SaltStack官方版】—— MANAGING THE JOB CACHE
    《SaltStack技术入门与实践》—— 实践案例 <中小型Web架构>2 Keepalived
    《SaltStack技术入门与实践》—— 实践案例 <中小型Web架构>1 初始化和Haproxy
    《SaltStack技术入门与实践》—— Peer
    多台主机之间共用私钥,实现免密登陆
    王者荣耀冒险模式刷金币
    2019-03-26 SpringBoot项目部署遇到跨域问题,记录一下解决历程
    关于gitignore无效的一些记录
    vlookup
    ubuntu ifconfig只有lo没有ens33的问题
  • 原文地址:https://www.cnblogs.com/mafeifan/p/3509750.html
Copyright © 2020-2023  润新知