Linux中.gitconfig文件的路径应该是什么?

23

大家好,能否告诉我.gitconfig文件所在的位置,也就是这个文件应该存储在哪个文件夹中。我正在看KernelNewbies的Linux内核教程,卡在了这个文件应该存储的位置。 我按照这个链接 http://kernelnewbies.org/FirstKernelPatch 中“设置git”部分的指示来创建.gitconfig文件,但不知道路径。


2
为了显示正在使用的路径,请即时配置git以显示文件名,例如 $ git -c core.editor=ls\ -al config --global --edit - hakre
在主目录中的哪里? - Owl
这是一个相关问题的链接,里面有一个很棒的答案:https://stackoverflow.com/questions/2114111/where-is-the-global-git-config-data-stored - undefined
这是相关文档页面的链接:https://git-scm.com/docs/git-config#FILES - undefined
2个回答

36
您的全局git配置写在~/.gitconfig里。
要在每个项目上覆盖git配置,可将其写入path/to/project/.git/config
但是,您不必直接编辑配置文件。可以在命令行上设置全局或本地配置变量。例如,要设置全局用户名,请使用git config --global user.name "your-username"

14

你可以在三个(如果你计算上--file的话,甚至是四个)不同的位置配置Git:

  • 机器级别:--system。除非你是系统管理员,否则你不应该使用这个。
  • 用户级别:--global。这是你想要用的。
  • 仓库级别:--local或者完全没有--whatever标志。

用户特定文件的实际位置因人而异:最常见的地方是你的主目录(~$HOME),但有些恼人的东西叫做XDG_HOME,还有一个叫做Windows :-)的恶心家伙,可能会影响这个。因此,避免知道文件所在位置的简单方法是使用git config --global来设置。

我的建议是先使用git config --global core.editor 你最喜欢的编辑器名称,然后使用git config --edit确保它实际起作用。例如,如果你喜欢vim,请运行git config --global core.editor vim。如果你喜欢nano,运行git config --global core.editor nano。如果你喜欢Emacs、Notepad或其他编辑器,那么模式现在应该是清楚的。:-)

一旦你设置了core.editor,使用--edit将确保它真正起作用,并且你将能够查看设置文件的格式(基本上是一个INI-style文件)。请确保无论你使用什么编辑器,它都会将文本文件写成ASCII文本,或者在需要辅助非ASCII字符时使用UTF-8,而不是"RichText"或UTF-16,并且不使用毫无意义的字节顺序标记("BOM"),因为这些将使Git难以处理。

除了core.editor(您不必设置它,我只是建议),您必须设置以下内容:
  • user.name "您的姓名"
  • user.email 您的电子邮件@example.com
您很可能还应该设置以下内容:
  • core.pager "less -S"
  • color.branch auto
  • color.diff auto
  • diff.renames true(甚至是copy
  • diff.renameLimit 0
  • merge.conflictstyle diff3
虽然这些都是口味问题。
一旦设置了core.editor,您可以使用git config --global var.iable "value"git config --global --edit设置其他内容。只有在value超过一个单词(包含空格)或需要其他保护(例如其中包含$*字符)时,才需要引号。(另外:当您设置了像别名之类的长而复杂的东西,并想要修复小错误或进行实验,而不必重新输入整个命令时,使用--edit特别有价值。)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接