在同一台机器上有 2 个不同的 git 用户; Git 当我推送并认为我是从我的其他用户那里推送时,将无法识别我的全局用户
Had 2 different git users on same machine; Git will not recognize my global user when I push and thinks I'm pushing from my other user
我在这台机器上有两个用户。 user1
链接到我的个人 GitHub,user2 链接到我的工作 GitHub。
用这个设置用户不起作用:
git config user.name "User Name"
git config user.email "UserEmail@Host"
如果我检查哪个用户名,用户电子邮件是否报告 user1,这是我想要的。但是当我按下它时它说 remote: Permission to user1/repo.git denied to user2
.
我快死在这里了。必须有一个简单的修复方法,我只是想念它。
我记得在设置时为 user2 使用了 SSH。我认为这可能与此有关。我很高兴完全删除 user2。
我找到了 this issue,它看起来一样,但对它的修复对我不起作用。
当您使用 SSH 连接到 GitHub 时,user.name
和 user.email
的值与身份验证无关。这些是 Git 在本地存储库中创建提交时使用的值。 Pushing/pulling 与那个是分开的。
当您通过 SSH 连接到 GitHub 时,您用来验证身份的密钥决定了您是哪个 GitHub 用户。如果您想以用户 2 的身份进行身份验证,请确保您的 Git 客户端设置具有用户 2 的 SSH 密钥,而不是与用户 1 的帐户相关联(在 GitHub 上)的密钥。
user.name
只是用来编写你的提交消息,与认证无关,你应该配置credential.username
进行网络认证。
详情可参考gitcredentials
我在这台机器上有两个用户。 user1
链接到我的个人 GitHub,user2 链接到我的工作 GitHub。
用这个设置用户不起作用:
git config user.name "User Name"
git config user.email "UserEmail@Host"
如果我检查哪个用户名,用户电子邮件是否报告 user1,这是我想要的。但是当我按下它时它说 remote: Permission to user1/repo.git denied to user2
.
我快死在这里了。必须有一个简单的修复方法,我只是想念它。
我记得在设置时为 user2 使用了 SSH。我认为这可能与此有关。我很高兴完全删除 user2。
我找到了 this issue,它看起来一样,但对它的修复对我不起作用。
当您使用 SSH 连接到 GitHub 时,user.name
和 user.email
的值与身份验证无关。这些是 Git 在本地存储库中创建提交时使用的值。 Pushing/pulling 与那个是分开的。
当您通过 SSH 连接到 GitHub 时,您用来验证身份的密钥决定了您是哪个 GitHub 用户。如果您想以用户 2 的身份进行身份验证,请确保您的 Git 客户端设置具有用户 2 的 SSH 密钥,而不是与用户 1 的帐户相关联(在 GitHub 上)的密钥。
user.name
只是用来编写你的提交消息,与认证无关,你应该配置credential.username
进行网络认证。
详情可参考gitcredentials