• 【1】Git基础


    一、Git概念

    1.1、Git定义

      Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

    1.2、Git特点

    • 直接记录快照,而非差异比较
    • 近乎所有操作都是本地执行
    • 使用 SHA-1 散列(hash,哈希)保证数据完整性
    • Git 一般只添加数据

    1.3、Git三种状态及三个工作区域

    三种状态
      已修改(modified):表示修改了文件,但还没保存到数据库中。
      已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
      已提交(committed):表示数据已经安全的保存在本地数据库中。

    另一种角度下Git文件的两种状态:
      已跟踪:已跟踪文件指被纳入了版本控制的文件,在上一次快照中有其记录。在工作一段时间后,它们的状态可能处于未修改、已修改或已暂存。
      未跟踪: 工作目录中除已跟踪文件以外的所有其它文件都属于未跟踪文件。 初次克隆某个仓库的时候,工作目录中的所有文件都属于已跟踪文件,并处于未修改状态。
    Git 文件生命周期图:

    三个工作区域
      工作目录:对项目的某个版本独立提取出来的内容。 这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
      暂存区域:是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。 也被称作“索引”,一般还是叫暂存区域。
      Git 仓库: Git 用来保存项目的元数据和对象数据库的地方。从其它计算机克隆仓库时,拷贝的就是这里的数据。

    1.4、Git 工作流程

    1. 在工作目录中修改文件(已修改状态)。

    2. 暂存文件,将文件的快照放入暂存区域(已暂存状态)。

    3. 提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录(已提交状态)。

    二、Git配置文件

    2.1、配置文件分类

    (1). 通用配置文件:/etc/gitconfig ,对所有用户及其仓库的通用配置: git config --system

    (2). 用户配置文件: ~/.gitconfig 文件或 ~/.config/git/config文件,只适用于该用户:git config --global

    (3). 仓库配置文件: .git/config,针对该仓库,即当前使用仓库的 Git 目录中的 config 文件。

    说明:
      每一个级别覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。

    三、Git配置文件相关命令

    获取帮助

    ##使用帮助的三种方法,<verb>为查询的命令
    $ git help <verb>
    $ git <verb> --help
    $ man git-<verb>
    ##查询config命令用法
    $ git help config
    

    配置用户信息

    ##设置用户名称、邮件地址,Git会将其写入每一次的提交信息中
    $ git config --global user.name "John Doe"
    $ git config --global user.email johndoe@example.com
    

    注意:
      使用了 --global 选项一次即可,之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。

    ##针对特定项目使用不同的用户名称与邮件地址
    cd "目标目录"
    $ git config user.name "John"
    $ git config user.email john@example.com
    

    文本编辑器

    ##设置Git默认使用的文本编辑器
    $ git config --global core.editor vim (系统默认)
    $ git config --global core.editor emacs
    $ git config --global core.editor vi
    

    检查配置信息

    ##列出 Git 所有能找到的配置
    $ git config --list
    ##列出 Git 的某一项配置:git config <key>
    $ git config user.name
    

    注意:
      列表中存在重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig 与 ~/.gitconfig)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。

  • 作者: DeepInThought
    出处: https://www.cnblogs.com/DeepInThought
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    vue过滤器
    laravel service provider(服务提供器)使用场景
    laravel下视图间共享数据的两种方法
    【实例】laravel给所有视图共享数据
    Java并发(八)计算线程池最佳线程数
    mybatis-plus多表联合分页查询
    MybatisPlusException: can not find lambda cache for this entity[]异常解决
    Swagger2学习——@ApiImplicitParams注解
    Spring Validation 校验
    SpringBoot:通过多个Context限制Bean的活动范围
  • 原文地址:https://www.cnblogs.com/DeepInThought/p/11108148.html
  • Copyright © 2020-2023  润新知