Git 配置文件
配置自己的Git工作环境。配置工作只需要一次,以后升级可以沿用现在的配置。当然,我们也可以随时使用相同的命令修改已有的配置。Git提供了一个叫做git config【译注:实际是 git-config 命令,只不过可以通过 git 加一个名字来呼叫此命令】的工具,专门用来读取或者配置Git工作的环境变量。而正是由这些环境变量决定了在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
[*] $INSTALL_PATH/etc/gitconfig 文件:对整个系统中所有用户都适用的配置。
[$INSTALL_PATH为Git的安装目录]
git config --system ... # 此命令读写$INSTALL_PATH/etc/gitconfig 文件
[*] ~/.gitconfig 文件:当前用户的配置文件,只适用当前用户。
git config --global ... # 此命令读写 ~/.gitconfig 文件
[*] 当前项目的配置文件(即工作目录中的.git/config文件):此配置文件只适用当前项目。
每一个级别的配置都会覆盖上层的相同配置,即.git/config里的配置会覆盖~/.gitconfig里的相同配置,~/.gitconfig里的配置会覆盖 $INSTALL_PATH/etc/gitconfig里的相同配置【以权限来理解即.git/config > ~/.gitconfig > $INSTALL_PATH/etc/gitconfig】。
#########################################################################################
windows系统中,Git会寻找用户主目录下的 .gitconfig 文件。此外,Git还会尝试寻找
$INSTALL_PATH/etc/gitconfig文件。
#########################################################################################
设定配置文件:
目前没有项目,所以先只配置$INSTALL_PATH/etc/gitconfig和~/.gitconfig配置文件比较。
配置$INSTALL_PATH/etc/gitconfig文件:[我的git安装目录为/opt/git]
# git config --system user.name "Milo Zhao"
error: could not lock config file /opt/git//etc/gitconfig: ?????????
报错,默认在Git安装目录下是没有etc目录的:
# ll /opt/git/
总用量 16
drwxr-xr-x. 2 root root 4096 10月 16 02:08 bin
drwxr-xr-x. 3 root root 4096 10月 16 02:08 lib64
drwxr-xr-x. 3 root root 4096 10月 16 02:08 libexec
drwxr-xr-x. 9 root root 4096 10月 16 02:08 share
# mkdir /opt/git/etc
# git config --system user.name "Milo Zhao"
# git config --system user.email milo@one.com
# ll /opt/git/etc/gitconfig
-rw-r--r--. 1 root root 25 10月 16 19:10 /opt/git/etc/gitconfig
# less /opt/git/etc/gitconfig
name = Milo Zhao
email = milo@one.com
/opt/git/etc/gitconfig (END)
配置~/.gitconfig文件:
# git config --global user.name "Nine Zhao"
# git config --global user.email nine@one.com
# whoami
root
# pwd
/root
# cat .gitconfig
name = Nine Zhao
email = nine@one.com
查看配置信息
# git config --list
user.name=Milo Zhao
user.email=milo@one.com
user.name=Nine Zhao
user.email=nine@one.com
...
我们看到有重复的变量名,这是因为它们来自不同的配置文件,上面的重复变量名分别来自$INSTALL_PATH/etc/gitconfig和~/.gitconfig,但是最终Git实际采用的是最后一个。
我们也可以直接查阅某个环境变量的设定,只要把变量名跟在后面即可:
# git config user.name
Nine Zhao
# git config user.email
nine@one.com
显示的均是重复变量名的最后一个。
其他项设置:
[*] 文本编辑器:Git需要输入一些额外消息的时候,会自动调用一个外部文本编辑器。我们可以设置此默认文本编辑器为我们自己熟悉的文本编辑器。一般默认可能是vi或vim。
[*]# git config --global core.editor vim
# git config core.editor
vim
[*] 差异分析工具:比较常用,在解决合并冲突时使用哪种差异分析工具,比如修改为vimdiff:
[*]# git config --global merge.tool vimdiff
# git config merge.tool
vimdiff
Git可以理解kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge和opendiff等合并工具的输出信息。当然,我们也可以指定自己开发的工具。
页:
[1]