[译]git config

git config

git config命令用来设置git的一些配置(包括全局配置和针对单个仓储的配置).git config命令能定义一个仓储的用户信息和用户偏好.

用法

git config user.name <name>

为当前仓储的commit定义作者的名字. 通常我们在这会使用--global这样所有以后的本地的其他的仓储的commit的作者名都设置统一了(--global意味着这是一个全局配置).

git config --global user.name <name>

为当前机器上当前用户的以后所有的仓储的所有commit定义了作者名.

git config --global user.email <email>

为当前机器上当前用户的以后所有的仓储的所有commit定义了作者的邮箱.  

git config --global alias.<alias-name> <git-command>

定义git命令的简写.

git config --system core.editor <editor>

定义命令(如commit命令)的文本编辑器 --system代表时系统级别的配置作用于这台电脑上的所有用户.

git config --global --edit

用文本编辑器打开当前机器上当前用户的配置文件手工进行修改.

讨论

所有的配置选项都存储在纯文本文件中, git config命令只不是一种方便的命令行接口. 通常情况下, 在一台全新的机器一到手我们会先使用--global来进行一些全局设置, 然后再开始工作.

Git把配置文件存储在三个不同的文件中, 一个作用于独立仓储, 一个作用于当前用户, 一个作用于整个系统:

  • <repo>/.git/config  - 这个是当前仓储的配置
  • ~/.gitconfig  - 用户所属的配置. 用--global的配置存放在这
  • $(prefix)/etc/gitconfig  - 系统级别的配置

当这3个文件相冲突的时候. 当前仓储的配置覆盖用户所属的配置, 用户所属的配置覆盖系统级别的配置. 打开一个配置文件, 你会看到如下内容:

[user]
name = John Smith
email = john@example.com
[alias]
st = status
co = checkout
br = branch
up = rebase
ci = commit
[core]
editor = vim

你可以在这个文本中直接修改配置, 效果和git config一样.

例子

安装完Git后第一件事就是设置name/email. 一个典型的设置如下:

# 告诉Git你是谁
git config --global user.name "John Smith"
git config --global user.email john@example.com

  

# 设置你喜欢的文本编辑器
git config --global core.editor vim
# 添加一些git命令的别名
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.up rebase
git config --global alias.ci commit

  

上一篇:git config --global core.autocrlf false


下一篇:git config proxy