Git:默默地改变用户名并继续正常进行

时间:2012-01-08 01:29:17

标签: git

嗨伙计们:我有时会在VM上为我的公司开发。我的VM上的git帐户属于一个accoutn,现在不再是我们的github用户了。因此,我不能承诺我最近的更改或拉动。

Git只是sais:

XXXXXXXX对johndoe的拒绝

无论如何......我怎么能更新git以使用我的凭证,而不是johndoe的,现在johndoe不在公司?

当然,这里奇怪的是 - git正在推动作为johndoe的事实 - 我一直以为我的git正常工作,就像jayunit100。这可能本身就是一个问题,但是现在,我不在乎---我只想交换正确的git凭据,以便我可以拉动,推动和继续我的生活。 < / p>

3 个答案:

答案 0 :(得分:1)

在我对Git的有限经验中,除了使用ssh密钥外,它总是要求提供凭据。您是否只需要(备份并)删除ssh密钥并使用您的帐户绑定一个新密钥?

答案 1 :(得分:1)

像这样设置git用户信息:

$ git config --global user.name "My Name"
$ git config --global user.email "My Email"

至于github凭据,由SSH密钥控制。

答案 2 :(得分:1)

首先,您需要确定使用remote推送/拉出的登录名,例如我的项目:

$ git remote -v
origin  git@projects.ceondo.com:photon.git (fetch)
origin  git@projects.ceondo.com:photon.git (push)

用户为git,在您的情况下,它是johndoes@yourcompany.com:repo.git,您需要jayunit100@yourcompany.com:repo.git,因此您只需更改遥控器的定义:

$ cat .git/config
... skip ...
[remote "origin"]
    url = git@projects.ceondo.com:photon.git
    fetch = +refs/heads/*:refs/remotes/origin/*

使用新用户修改网址行。然后再次运行git remote -v。你会看到类似的东西:

$ git remote -v
origin  foo@projects.ceondo.com:photon.git (fetch)
origin  foo@projects.ceondo.com:photon.git (push)

你现在可以像往常一样拉/推,它只改变你访问存储库的方式,所以生活还在继续。