-
附录 A:其他环境中的 Git
- A1.1 图形界面
- A1.2 Visual Studio 中的 Git
- A1.3 Visual Studio Code 中的 Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine 中的 Git
- A1.5 Sublime Text 中的 Git
- A1.6 Bash 中的 Git
- A1.7 Zsh 中的 Git
- A1.8 PowerShell 中的 Git
- A1.9 总结
-
附录 B:在你的应用程序中嵌入 Git
-
附录 C:Git 命令
1.6 入门 - 首次 Git 设置
首次 Git 设置
现在你已经将 Git 安装到系统中,你可能想要做一些事情来定制你的 Git 环境。你只需要在每台电脑上做一次这些设置,它们会在升级之间保留。你也可以随时通过再次运行这些命令来更改它们。
Git 带有一个名为 git config
的工具,它允许你获取和设置控制 Git 外观和操作的所有方面的配置变量。这些变量可以存储在三个不同的位置:
-
[path]/etc/gitconfig
文件:包含应用于系统上所有用户及其所有仓库的配置值。如果你在git config
中传递选项--system
,它将专门读取和写入此文件。由于这是一个系统配置文件,你需要管理员或超级用户权限才能对其进行更改。 -
~/.gitconfig
或~/.config/git/config
文件:特定于你个人,即用户。你可以通过传递--global
选项使 Git 特别读取和写入此文件,这将影响你系统上所有的仓库。 -
你当前使用的任何仓库的 Git 目录(即
.git/config
)中的config
文件:特定于该单个仓库。你可以使用--local
选项强制 Git 从该文件读取和写入,但实际上这是默认行为。不出所料,你需要位于 Git 仓库中的某个位置才能使此选项正常工作。
每个级别都会覆盖上一级别的值,因此 .git/config
中的值会优先于 [path]/etc/gitconfig
中的值。
在 Windows 系统上,Git 会在 $HOME
目录中查找 .gitconfig
文件(对于大多数用户来说是 C:\Users\$USER
)。它还会查找 [path]/etc/gitconfig
,尽管它相对于 MSys 根目录,而 MSys 根目录是你选择在运行安装程序时将 Git 安装到 Windows 系统上的位置。如果你使用的是 2.x 或更高版本的 Git for Windows,在 Windows XP 上还有一个系统级配置文件位于 C:\Documents and Settings\All Users\Application Data\Git\config
,在 Windows Vista 和更新版本上位于 C:\ProgramData\Git\config
。此配置文件只能通过以管理员身份运行 git config -f <file>
来更改。
你可以使用以下命令查看所有设置及其来源:
$ git config --list --show-origin
你的身份
安装 Git 后,你应该做的第一件事是设置你的用户名和电子邮件地址。这很重要,因为每次 Git 提交都会使用此信息,它会不可变地嵌入到开始创建的提交中:
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
同样,如果你传递了 --global
选项,你只需要执行一次,因为这样 Git 会始终将该信息用于你在该系统上执行的任何操作。如果你想在特定项目中使用不同的姓名或电子邮件地址来覆盖此设置,你可以在该项目中运行命令时不使用 --global
选项。
许多 GUI 工具在您第一次运行它们时会帮助您完成此操作。
您的编辑器
现在您的身份已设置好,您可以配置 Git 需要您输入消息时将使用的默认文本编辑器。 如果未配置,Git 将使用您系统的默认编辑器。
如果您想使用其他文本编辑器,例如 Emacs,您可以执行以下操作
$ git config --global core.editor emacs
在 Windows 系统上,如果您想使用其他文本编辑器,则必须指定其可执行文件的完整路径。 这可能因编辑器的打包方式而异。
在 Notepad++ 的情况下,这是一个流行的编程编辑器,您可能希望使用 32 位版本,因为在撰写本文时,64 位版本不支持所有插件。 如果您使用的是 32 位 Windows 系统,或者在 64 位系统上使用 64 位编辑器,则需要输入以下内容
$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
注意
|
Vim、Emacs 和 Notepad++ 是开发人员在基于 Unix 的系统(如 Linux 和 macOS 或 Windows 系统)上经常使用的流行文本编辑器。 如果您使用的是其他编辑器或 32 位版本,请在 git config core.editor 命令 中查找有关如何使用 Git 设置您喜欢的编辑器的具体说明。 |
警告
|
您可能会发现,如果您没有像这样设置您的编辑器,当 Git 尝试启动它时,您会进入非常混乱的状态。 在 Windows 系统上的示例可能包括在 Git 启动编辑期间过早终止的 Git 操作。 |
您的默认分支名称
默认情况下,Git 在您使用 git init
创建新存储库时会创建一个名为 master 的分支。 从 Git 版本 2.28 开始,您可以为初始分支设置不同的名称。
要将 main 设置为默认分支名称,请执行以下操作
$ git config --global init.defaultBranch main
检查您的设置
如果您想检查您的配置设置,可以使用 git config --list
命令列出 Git 在此时能找到的所有设置
$ git config --list
user.name=John Doe
[email protected]
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
您可能会看到同一个键出现多次,因为 Git 从不同的文件读取同一个键(例如,[path]/etc/gitconfig
和 ~/.gitconfig
)。 在这种情况下,Git 将使用它看到的每个唯一键的最后一个值。
您还可以通过键入 git config <key>
来查看 Git 认为特定键的值是什么
$ git config user.name
John Doe
注意
|
由于 Git 可能从多个文件读取同一个配置变量的值,因此您可能有一个意想不到的值,而您不知道原因。 在这种情况下,您可以查询 Git 以了解该值的 来源,它会告诉您哪个配置文件最终决定了该值
|