我想使用多个私钥连接到不同的服务器或同一服务器的不同部分(我的用途是服务器的系统管理,Git的管理,以及同一服务器内的正常Git使用).我试过简单地将id_rsa文件中的密钥堆叠起来无济于事.
显然,一种直接的方法是使用该命令
ssh -i <key location> login@server.example.com
Run Code Online (Sandbox Code Playgroud)
这非常麻烦.
关于如何更轻松地做这件事的任何建议?
自从我把任何东西推到GitHub以来已经有一段时间了.我最初在计算机上设置了帐户,一切都很顺利.然后我将我的帐户更改为客户的帐户(因此我可以将代码推送到他们的私人存储库).
已经有一段时间了,现在我正在改回旧帐户,我遇到了麻烦.我生成了一个新的rsa_key,并且几乎遵循了这里的指令.
但是,当我输入:ssh -T git@github.com我得到:
嗨oldincorrectusername!您已成功通过身份验证,但GitHub不提供shell访问权限.
我也不能推送到我的回购,因为这个旧的客户端用户名未经授权.我在我的计算机和GitHub上的帐户设置上都仔细检查了我的ssh密钥.
我还设置了我的全局帐户变量:
git config --global user.name "Firstname Lastname"
git config --global user.email "your_email@youremail.com"
git config --global github.user username
git config --global github.token 0123456789yourf0123456789token
Run Code Online (Sandbox Code Playgroud)
它仍然是给我旧的用户名.
有什么建议?
谢谢,
是否可以临时更改"git push remote master"的ssh用户而不会搞乱.git/config或"git remote",或者使用整个远程url?
[root@host gitrepo]# git push otheruser@remote master # this does not work, but how great it would be
[root@host gitrepo]# USER=otheruser git push remote master # still asks password for root
Run Code Online (Sandbox Code Playgroud) 我有一个已经使用多年的 GitHub 用户名,但是,在加入新公司后,他们要求我在公司电子邮件地址下注册一个新的 GitHub 帐户。现在我无法克隆私有存储库,因为 user.name 被设置为我的普通 GitHub 句柄。
我在此页面上看到,我可以在 URL 之前添加我的用户名,例如git clone https://usernamenew@github.com/companyname/repo-name.git.
但是,我收到错误
Cloning into 'repo-name'...
remote: Repository not found.
fatal: repository 'https://usernamenew@github.com/companyname/repo-name.git/' not found
Run Code Online (Sandbox Code Playgroud)
如何使用不同的用户名克隆公司的存储库?