cmkzjw 发表于 2018-9-18 07:14:59

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]
查看完整版本: Git 配置文件