我在 Linux 中使用的 5 个 Git 配置
创始人
2024-03-02 12:54:07
0

这份简要指南能够帮助你快速开始使用 Git,以及配置一些选项。

在 Linux 中设置 Git 十分简单,但为了获得完美的配置,我做了以下五件事:

  1. 创建全局配置
  2. 设置默认名称
  3. 设置默认邮箱地址
  4. 设置默认分支名称
  5. 设置默认编辑器

我使用 Git 管理我的代码、命令行脚本以及文档版本。这意味着每次我开始一项新的任务,首先我需要创建一个文件目录并将其添加到 Git 库中:

$ mkdir newproject
$ cd newproject
$ git init

有一些我一直想要的常规设置。不多,但可以避免我每次都进行配置。我喜欢利用 Git 的 全局 配置功能。

Git 提供了进行手动配置的 git config 命令,但这有一些注意事项。例如,通常你会设置邮箱地址。你可以通过运行 git config user.email 你的邮件地址 命令进行设置。然而,这只会在你当前所在的 Git 目录下起作用。

$ git config user.email alan@opensource.com
fatal: not in a git directory

此外,当这个命令在 Git 仓库中运行时,它只会配置特定的一个仓库。在新的仓库中,你不得不重复这个步骤。我可以通过全局配置来避免重复。选项 --global 会指示 Git 将邮箱地址写入全局配置 ~/.gitconfig 文件中,甚至在必要时会创建它:

请记住,波浪线(~)代表你的主文件夹。在我的电脑中它是 /home/alan

$ git config --global user.email alan@opensource.com
$ cat ~/.gitconfig
[user]
        email = alan@opensource.com

这里的缺点是,如果你有大量偏好设置,需要输入很多命令,这将花费大量时间并且很容易出错。Git 提供了更加快捷有效的方式,可以直接编辑你的全局配置文件——这是我列表中的第一项!

1、创建全局配置

如果你刚开始使用 Git,或许你还没有该文件。不用担心,让我们直接开始。只需要用 --edit 选项:

$ git config --global --edit

如果没有该文件,Git 将会创建一个包含以下内容的新文件,并使用你终端的默认编辑器打开它:

# This is Git's per-user configuration file.
[user]
# Please adapt and uncomment the following lines:
#       name = Alan
#       email = alan@hopper
~
~
~
"~/.gitconfig" 5L, 155B                                     1,1           All

现在我们已经打开了编辑器,并且 Git 已经在后台创建了全局配置文件,我们可以继续接下来的设置。

2、设置默认名称

名字是该文件中的首要条目,让我们先从它开始。用命令行设置我的名称是 git config --global user.name "Alan Formy-Duval"。不用在命令行中运行该命令,只需要在配置文件中编辑 name 条目就行:

name = Alan Formy-Duval

3、设置默认邮箱地址

邮箱地址是第二个条目,让我们添加它。默认情况下,Git 使用你的系统提供的名称和邮箱地址。如果不正确或者你想要更改,你可以在配置文件中具体说明。事实上,如果你没有配置这些,Git 在你第一次提交时会友好的提示你:

Committer: Alan 
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate....

在命令行中运行 git config --global user.email "alan@opensource.com" 会设置好我的邮箱。同样,我们在配置文件中编辑 email 条目,提供你的邮箱地址:

email = alan@opensource.com

我喜欢设置的最后两个设置是默认分支名称和默认编辑器。当你仍在编辑器中时,需要添加这些指令。

4、设置默认分支名称

目前有一种趋势,即不再使用 master 作为默认分支名称。事实上,在新存储库初始化时,Git 将通过友好的消息提示更改默认分支名称:

$ git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint:   git config --global init.defaultBranch 

这个名为 defaultBranch 的指令需要位于一个名为 init 的新部分中。现在普遍接受的是,许多程序员使用 main 这个词作为他们的默认分支。这是我喜欢使用的。将此部分后跟指令添加到配置中:

[init]
            defaultBranch = main

5、设置默认编辑器

第五个设置是设置默认的编辑器。这是指 Git 将使用的编辑器,用于在你每次将更改提交到存储库时输入你的提交消息。不论是 nanoemacsvi 还是其他编辑器,每个人都有他喜欢的。我喜欢用 vi。添加 core 部分,并设置 editor 指令为你喜欢的编辑器。

[core]
            editor = vi

这是最后一项。退出编辑器。Git 在主目录下保存全局配置文件。如果你再次运行编辑命令,将会看到所有内容。注意配置文件是明文存储的文本文件,因此它可以很容易使用文本工具查看,如 cat 命令。这是我的配置文件内容:

$ cat ~/.gitconfig
[user]
        email = alan@opensource.com
        name = Alan Formy-Duval
[core]
        editor = vi
[init]
        defaultBranch = main

这是一个简单的指南,可以让你快速开始使用 Git 和它的一些配置选项。


via: https://opensource.com/article/22/9/git-configuration-linux

作者:Alan Formy-Duval 选题:lkxed 译者:Donkey-Hao 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Git

相关内容

冲刺 " 开源 ...
近日,开源共识(上海)网络技术有限公司(以下简称 " 开源中国 "...
2025-03-07 23:20:36
邀请码炒到10万?Open...
新智元报道 编辑:编辑部 JHNZ 【新智元导读】离了个大谱,M...
2025-03-07 14:23:04
腾讯混元发布并开源图生视频...
每经AI快讯,3月6日,据腾讯混元消息,腾讯混元发布图生视频模型并...
2025-03-06 16:50:53
开源仅6天,阿里万相大模型...
3月3日消息,开源社区Hugging Face最新榜单显示,开源仅...
2025-03-03 20:19:33
EA 开源 4 款《命令与...
IT之家 2 月 28 日消息,EA 今日在 GitHub 开源了...
2025-02-28 12:48:47
DeepSeek开源第四弹...
DeepSeek开源周(OpenSourceWeek)第四弹来了,...
2025-02-27 23:19:27

热门资讯

使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
Bazzite:专为 Stea... 为 Linux 桌面或者 Steam Deck 做好游戏准备,听起来都很刺激!对于一个专为 Linu...
Motrix:一个漂亮的跨平台... 一个开源的下载管理器,提供了一个简洁的用户界面,同时提供了跨平台操作的所有基本功能。在这里了解关于它...
Bash 脚本中如何使用 he... here 文档 here document (LCTT 译注:here 文档又称作 heredoc ...
使用 dialog 和 jq ... 为何选择文字用户界面(TUI)?许多人每日都在使用终端,因此, 文字用户界面 Text User I...