Git 提供了一个叫作 git config 的工具(实际是 git-config 命令,只不过能够经过 git 加一个名字来呼叫此命令),专门用来配置或读取相应的工做环境变量。而正是由这些环境变量,决定了 Git 在各个环节的具体工做方式和行为。这些变量能够存放在如下三个不一样的地方:javascript
/etc/gitconfig :系统中对全部用户都广泛适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。java
~/.gitconfig :用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。git
.git/config :这里的配置仅仅针对当前项目有效。对应local级别,若使用 --system 选项,或者不带参数,读写的就是这个文件。vim
这3个配置文件,并不都是安装完后就有了,可能只有在咱们真正添加配置项的时候才会生成。每个级别的配置都会覆盖上层的相同配置,因此 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。在 Windows 系统上,Git 会找寻用户主目录下的 .gitconfig 文件。主目录即 $HOME 变量指定的目录,通常都是 C:\Documents and Settings\$USER。此外,Git 还会尝试找寻 /etc/gitconfig 文件,只不过看当初 Git 装在什么目录,就以此做为根目录来定位。编辑器
首先,要配置的是你我的的用户名称和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,因此会随更新内容一块儿被永久归入历史记录。根据须要使用参数[--global、-- system、--system或者不使用]选项,更改对应的配置文件。工具
$ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com
一样的命令也能够用于修改用户名和邮箱,不能成功的话,post
$ git config --global --replace-all user.email "userName" $ git config --global --replace-all user.name "userEmail"
关于自动的用户名和邮箱ui
Your name and email address were configured automatically based on your username and hostname. Please check that they are accurate. You can suppress this message by setting them explicitly. Run the following command and follow the instructions in your editor to edit your configuration file
git config color.ui false git config color.ui true git config --global color.ui false git config --global color.ui true
若是要单独设置某些项的颜色,能够用前面几点提到的方法进行设置,好比:this
// status 高亮模式为 auto git config --global color.status auto // branch 高亮模式为 auto git config --global color.branch auto // ui 高亮模式为 auto git config --global color.ui auto
咱们在用git的时候,不少时候都是用的命令行形式的,不只要记得住大量命令,还要能灵活进行组合,这就非常头大了,正由于此,命令别名的重要性就出来了。但与其说是别名,倒不如说是另类的简写形式。别名的配置也须要使用config命令,好比给 git status 设置别名 st:操作系统
git config --global alias.st status这样咱们之后使用的时候,直接用 git st 就能够作 git status 的事了。
git单个文件默认大小是50M,超过50M,会给出warning。大于100M会没法提交,能够经过命令,修改单个文件默认大小(以设置500M以例):
git config --global http.postBuffer 524288000
接下来要设置的是默认使用的文本编辑器。Git 须要你输入一些额外消息的时候,会自动调用一个外部文本编辑器给你用。默认会使用操做系统指定的默认编辑器,通常可能会是 Vi 或者 Vim。若是你有其余偏好,好比 Emacs 的话,能够从新设置:
$ git config --global core.editor emacs
还有一个比较经常使用的是,在解决合并冲突时使用哪一种差别分析工具。会用git的人,确定知道 git diff,但并不必定知道这个 diff 命令调用的差别分析工具也是能够改的,并且git能支持的差别分析工具不少,Git 能够理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。固然,你也能够指定使用本身开发的工具,具体怎么作能够去这里https://git-scm.com/book/zh/v... 查看。假如咱们要改用vimdiff,咱们能够这样设置:
$ git config --global merge.tool vimdiff
要检查已有的配置信息,可使用 git config --list 命令:
$ git config --list有时候会看到重复的变量名,那就说明它们来自不一样的配置文件(好比 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。
也能够指定查看系统config、当前用户(global)、当前仓库配置信息
$ git config --system --list $ git config --global --list $ git config --local --list
也能够直接查阅某个环境变量的设定,只要把特定的名字跟在后面便可,像这样:
$ git config user.name Scott Chacon