递归git克隆期间用户名错误

时间:2014-09-08 17:21:23

标签: git ssh

我正在尝试使用一些子模块设置git存储库。但是,每当我尝试对存储库进行递归克隆时,无论我在原始git clone命令中指定的用户名如何,它都会继续尝试使用我的本地用户名。

这是我运行的原始命令

git clone --recursive  ssh://{user id}@{ip address}/app/data/git/repo.git

原始仓库的克隆工作正常,并使用ssh行中指定的用户ID。但是,当它到达子模块时,它使用我的本地帐户而不是ssh请求中指定的用户ID。

这就是我的.gitmodules文件的样子

[submodule "modules/submodule"]
        path = modules/submodule
        url = ssh://{ip address}/app/data/git/submodule.git

是否有一些系统环境设置或gitmodule文件中的某些内容需要设置?这需要适用于多个用户帐户,因此我不能将我的用户ID硬编码到.gitmodule文件中。

感谢。

2 个答案:

答案 0 :(得分:0)

你能做这样的事吗?我不知道它是否有效,但值得一试。

https://stackoverflow.com/a/10056098/237091请参阅在GitHub(或Heroku或......)的多个帐户之间进行选择

答案 1 :(得分:0)

解决方案在于使用以下条目更新您的ssh-agent。对于Mac / Linux用户,

  1. 通过在终端“ vim〜/ .ssh / config”中键入来打开ssh配置
  2. 添加以下条目,
    # Github account
    Host github.com
        HostName github.com <- your git repository url
        User newUserName  <-- ensure this is the user name you want to use for submodules
        IdentityFile ~/.ssh/id_rsa <- if you have a different name then change this

发布此更改后,您也应该能够正确克隆子模块。