在配置git时,我运行了这两个命令:

git config --global user.name "My Name"

git config --global user.email "myemail@example.com"

但是,我怀疑我是否打错了。那么,是否有任何命令可以知道git在配置过程中保存的名称和电子邮件?显然,通过查看提交历史,我可以使用git log命令来知道这一点。但是我必须提交,对吧?我可以通过命令行知道吗?


当前回答

有时上述解决方案无法在macbook上获得用户名和密码。

IDK为什么?这里我得到了另一个解。

$ git credential-osxkeychain get
host=github.com
protocol=https

this will revert username and password

其他回答

考虑到@Robert说的话,我试着玩config命令,似乎有一个直接的方法来知道名字和电子邮件。

要知道用户名,输入:

git config user.name

要了解电子邮件,输入:

git config user.email

这两个程序分别只输出姓名和电子邮件,其中一个不需要查看整个列表。会派上用场。

命令git config——list将列出设置。在这里你还可以找到user.name和user.email。

设置全局/所有项目

首先获取并确认旧值:

git config --global user.email
git config --global user.name

输出:(如果git新安装,那么输出将显示为空)

yourold@email.com
youroldgoodname

现在设置新的值

git config --global user.email yournew@email.com
git config --global user.name yournewgoodname

用于当前工作空间或项目 只需从以上所有命令/行中删除——global即可

在这里加上我的意见。如果你想获取user。name或user。只发送电子邮件,没有详细输出。

在linux下,输入git config——list | grep user.name。

在windows下,输入git config——list | findstr user.name。

这将只给你user.name。

在git存储库目录中,运行git config user.name。

为什么在你的git repo目录中运行这个命令很重要?

如果你在git存储库之外,git配置user.name会在全局级别给你user.name的值。当进行提交时,将在本地级别读取关联的用户名。

尽管不太可能,但假设user.name在全局级别定义为foo,而在本地级别定义为bar。然后,当你在git repo目录外运行git config user.name时,它会给出bar。然而,当你真正提交一些东西时,相关的值是foo。


Git配置变量可以存储在3个不同的级别。每一层都会覆盖前一层中的值。

1. 系统级(应用于系统上的每个用户及其所有存储库)

要查看,git config——list——system(可能需要sudo) 要设置,请使用git config——system color。ui真实 要编辑系统配置文件,使用git config——edit——system

2. 全局级别(特定于您和用户的值)。

要查看,请使用git config——list——global 要设置,请使用git配置——global user.name xyz 要编辑全局配置文件,请使用git config——edit——global

3.存储库级别(特定于单个存储库)

要查看,请使用git config——list——local 要设置,请使用git config—local core。Ignorecase true(——local可选) 要编辑存储库配置文件,请执行git config——edit——local(——local optional)

如何查看所有设置?

运行git config——list,显示系统、全局和(如果在存储库中)本地配置 运行git config——list——show-origin,也会显示每个配置项的原始文件

如何读取一个特定的配置?

例如,运行git config user.name获取user.name。 您还可以指定选项——system、——global、——local以在特定级别读取该值。


参考:1.6入门-首次安装Git