我想了解下的.ssh / config并git的/ config中相互作用的配置如何。
这里的情况:我有两个独立的帐户GitHub的,我们姑且称之为GH0和GH1,我想既“passwordlessly”互动,即使用SSH密钥~/.ssh/id_rsa.GH0.pub
和~/.ssh/id_rsa.GH1.pub
。 目前,这个工程的GH0而不是GH1。 (例如, push
命令GH1与死ERROR: Repository not found.\nfatal: The remote end hung unexpectedly.
; ssh -T git@github.com
工作的,但仅仅是因为它连接GH0
。)
这意味着,对于每个这些github上的帐户余必须有在〜/ .ssh /配置,指定哪个ssh到使用它的密钥文件的对应部分。 (例如,用于GH0的部分将有类似IdentityFile ~/.ssh/id_rsa.GH0
等)
现在的问题是:我有什么别的事情放在每一部分的? 进一步来说,
什么才是我必须把作为参数传递给
Host
在关键字~/.ssh/config
?
我到目前为止在此发现的信息是没有意义的我。 在一些例子中,我看到的东西一样
Host github.com
Hostname github.com
User git
IdentityFile ~/.ssh/id_rsa
Host ac2.github.com
Hostname github.com
User git
IdentityFile ~/.ssh/id_rsa_ac2
在这情况下“AC2”。 前缀在第二Host
来自???
在哪里可以找到我的github账户对应的呢?
一些信息的,我发现导致人们猜测,争论的Host
关键字实际上任意的,这意味着下面将罚款太
Host omgwtfbbq
Hostname github.com
User git
IdentityFile ~/.ssh/GH0
Host 4.8.15.16.23.42
Hostname github.com
User git
IdentityFile ~/.ssh/GH1
但即便如此,这还提出了另一个问题: 如何git
(或github上)了解用于任何给定的命令,这两个部分的?
同样,我想 1,这将在项目中指定.git/config
文件,在某些[remote ...]
部分,但如何?
1,我必须诉诸猜测,因为一件事,我一直没能找到文件的键值对中的.git / config中的解读。 我发现的最接近的是混帐配置手册页,但我不能找到这个页面中的任何文档的url = ...
下一个场[remote ...]
部分。 对于git的远程手册页,也没有关于这一领域的文档。