为什么我的git user.name和user.email突然被删除了?

5

我今晚在 Visual Studio Code 中试图提交我的代码,看到了这个消息。

输入图像描述

我先暂存了我的更改,然后像往常一样点击了“提交”!

问题1 - 为什么这些值会突然消失?

顺便提一下- 当我今天早上开始工作时,我注意到了一个 VS Code 更新。我不知道为什么 VS Code 更新会删除这些值!

问题2 - 我可以重新配置这些值,但是自从我最初进行配置以来已经过了很长时间,这两个值是否需要与我的 github.com 用户名/密码相同?


3
我也遇到了这个非常奇怪的问题。自从昨天更新了vscode以来,第一次提交就出现了全局git凭据消失的情况。 - bnw
2
我有同样的问题(在Linux上,仅通过命令行使用Git):我的用户名和电子邮件经常从gitconfig文件中删除。 - Harold
1
我也遇到了这个问题。我已经在命令行上重复设置了 git config --global user.name,但这些值仍然被清除。我不使用 vscode,但我使用 atom。 - rachelderp
2个回答

0

我不认为 VSC 已经从配置文件中删除了这些值,也许你只是在本地仓库中进行了配置,请检查全局配置文件以在所有仓库中应用你的用户名和电子邮件

git config --global -l

不,这些数据定义了您在提交中的身份,它们与远程存储库的凭据没有关系。
来源:https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup

1
你移动了 Git 的通用配置文件吗?你可以运行以下命令来找出全局 .gitconfig 文件的位置:git config --global --edit 只要你的编辑器告诉你文件所在的目录即可。 - Rokokorag
不,除非我无意中按错了按钮导致它发生了移动,否则我没有移动任何东西。我只是添加了姓名/电子邮件,现在它又可以正常工作了。我不知道是否应该担心还是继续前进? - user1186050
我刚刚运行了 git config --global --edit 命令,输出中只看到了我的姓名和电子邮件地址。我应该担心吗?是否意外删除了某些内容?我应该看到更多的信息吗?我对使用 git 还有点新。 - user1186050
@user1186050 新手使用git !=== 我已经提交了1000+次 - rioV8
祝你学习如何配置Git好运!我鼓励你学习如何在命令行中使用它。你最终会感到更加舒适,熟练掌握其使用和高级功能。 - Steven Lu
显示剩余4条评论

0

我曾经遇到这个问题,花了很长时间才解决。在我的电脑上,Git在命令行、Visual Studio、Tortoise Git和(最初)Visual Studio Code中都能正常工作。

然而,Visual Studio Code突然决定放弃提交功能,原因是缺少user.name和user.email。

简而言之:

打开一个PowerShell窗口

输入:

git config --list --show-origin

找到正在使用gitconfig的etc文件夹,例如。
C:\Program Files\Git\etc\gitconfig

编辑那个文件并添加以下行:
[user]
    name = my name
    email = my email address

冗长的版本:

在VS Code中运行终端并执行:

git config --list --show-origin

显示一切都在正确的位置,应该已经找到了缺失的值。使用命令行等方法也是一样的。
最终我解决了这个问题。
Git.exe 被从两个不同的文件夹中使用:
C:\Program Files\Git\cmd\git.exe

并且

C:\Program Files\Git\bin\git.exe

但这并没有什么区别。当从命令行运行每个命令时:
.\git.exe config --list --show-origin

在每个文件夹中,显示的值应该被捕捉到,但很明显VS Code没有这样做。以下是输出的部分截图:
file:C:/Program Files/Git/etc/gitconfig fetch.prune=true
file:P://.gitconfig     http.sslverify=false
file:.git/config        core.repositoryformatversion=0

所以我最后编辑了etc文件夹中的文件。
C:\Program Files\Git\etc\gitconfig

并添加以下内容:
[user]
    name = my name
    email = my email address

它在VS Code中立即生效。

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