运行 Git 前的配置

Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。而正是由这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:

/etc/gitconfig文件

系统中对所有用户都普遍适用的配置。若使用git config时用--system选项,读写的就是这个文件。

~/.gitconfig文件

用户目录下的配置文件只适用于该用户。若使用git config时用--global选项,读写的就是这个文件。

.git/config文件

也就是当前项目的 git 目录中的配置文件,这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以.git/config 里的配置会覆盖 /etc/gitconfig中的同名变量。

配置用户信息

第一个要配置的是你个人的用户名称和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一起被永久纳入历史记录:

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

如果用了--global选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。如果要在某个特定的项目中使用其他名字或者电邮,只要去掉--global选项重新配置即可,新的设定保存在当前项目的.git/config文件里。

文本编辑器

接下来要设置的是默认使用的文本编辑器。Git 需要你输入一些额外消息的时候,会自动调用一个外部文本编辑器给你用。默认会使用操作系统指定的默认编辑器,一般可能会是 Vi 或者 Vim。如果你有其他偏好,比如 Emacs 的话,可以重新设置:

$ git config --global core.editor emacs

1.5.3 差异分析工具

还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。比如要改用 vimdiff 的话:

$ git config --global merge.tool vimdiff

Git 可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。

查看配置信息

要检查已有的配置信息,可以使用git config --list命令:

$ git config --list
user.name=Scott Chacon
user.email=schacon@gmail.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...</span>

有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如/etc/gitconfig和~/.gitconfig),不过最终 Git 实际采用的是最后一个。

也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:

$ git config user.name
Scott Chacon

获取帮助

想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,方法有三:

$ git help <verb>
$ git <verb> --help
$ man git-<verb>

比如,要学习 config 命令可以怎么用,运行:

$ git help config

Git 读书笔记(二)相关推荐

  1. oracle直查和call哪个更快,让oracle跑的更快1读书笔记二

    当前位置:我的异常网» 数据库 » <>读书笔记二 <>读书笔记二 www.myexceptions.net  网友分享于:2013-08-23  浏览:9次 <> ...

  2. pro git读书笔记

    pro git读书笔记 起步 三种区域以及三种状态 Git 项目有三个工作区域的概念:工作目录,暂存区域以及Git 仓库 工作目录是我们用来修改文件的目录,是对项目的某个版本独立提取出来的内容 暂存区 ...

  3. 《How Tomcat Works》读书笔记(二)

    <How Tomcat Works>读书笔记(二) 这是<How Tomcat Works>第一二章的读书笔记.第一张主要写了一个静态资源处理的web服务器,第二章加了对ser ...

  4. 3D游戏设计读书笔记二

    3D游戏设计读书笔记二 一.简答题 • 解释 游戏对象(GameObjects) 和 资源(Assets)的区别与联系.   GameObjects是一个具体的实例,Assets是包括诸多游戏素材的资 ...

  5. 《Docker 技术入门与实践》-读书笔记二

    <Docker 技术入门与实践>-读书笔记一 <Docker 技术入门与实践>-读书笔记二 一.数据管理 用户在使用 Docker 的过程中,往往需要能查看容器内应用产生的数据 ...

  6. 《Introduction To Modern Cryptography》读书笔记二

    <Introduction To Modern Cryptography>读书笔记二 本笔记纯粹个人读书习惯与相应见解,内容归纳完全出于个人需要与个人局限,如有修改意见(比如哪儿应该是值得 ...

  7. 《李元芳履职记》读书笔记二 IT技术管理的沟通与团队建设

    <李元芳履职记>读书笔记二 接一 https://blog.csdn.net/qq_45937199/article/details/103305223 IT技术人员从技术岗走向管理岗,所 ...

  8. python图像处理《数字图像处理与python实现》读书笔记二:空间滤波

    文章目录 重要! 第三章 空间滤波 概览 3.1 空间滤波基础 3.1.1 空间滤波的机理 3.1.2 空间滤波器模板 3.2 平滑处理 3.2.1 平滑线性空间滤波器 3.2.2 统计排序滤波器 3 ...

  9. Git学习笔记(二)

    本文主要讲解分支管理 Git学习笔记(一) 目录 一.概念 二.创建与合并分支 2.1 简介 2.2 配图示例 2.3 命令小结 三.解决冲突 四.分支管理策略 五.Bug分支 5.1 stash功能 ...

最新文章

  1. Hibernate-ORM:05.Hibernate中的list()和iterator()
  2. STM32F0308开发环境的选择--CooCox CoIDE篇
  3. LAN WAN WLAN 的区别
  4. 【转】SOAR平台初探(一)
  5. php如何实现购物时数量增减,1、vuex状态管理--购物车数量增减
  6. 学网络编程很好的参考源码
  7. Linux下安装Win10ARM,更多安卓旗舰机将可以安装运行Win10 ARM
  8. Js脚本之jQuery学习笔记(1)
  9. 母函数 经典题目汇总
  10. hadoop学习笔记7-Azkaban
  11. MyEclipse8.5开发环境配置,SVN插件安装问题(转载)
  12. 视觉导航定位系统工作原理及过程
  13. jetson xiaver NX 安装tensorflow object detection api 遇到的tensorflow-addons 不能安装问题
  14. php中UNIX时间戳转换为日期
  15. 2022年吉林省高职单招(职业倾向性)考试强化训练及答案
  16. python 请在微信客户端打开_如何实现‘请在微信客户端打开链接’
  17. Java基础入门(十八)之NIO
  18. 规划测试人员的测试职业发展路径
  19. 36.(cesium篇)cesium站立的圆面
  20. 论蛋疼的调戏matrix67的首页

热门文章

  1. Trimmomatic、bowtie2、samtools和bedtools安装过程全记录(已全部安装成功)
  2. 【Data Science from Scratch 学习笔记】第2章 Python速成(上)
  3. 【Python】常用模块安装命令
  4. 初次接触tridium niagara软件
  5. 推荐一个好用的 所见即所得的 markdown 编辑器 Mark Text
  6. 史上最全Nginx配置优化
  7. 随记-简单而优雅的 namedtuple
  8. 软件测试用例的设计方法(第二篇)
  9. 可见性,原子性,有序性的源头(一)
  10. vultr完美搭建 Nextcloud 私有云网盘教程