【问题标题】:Permanently add an SSH key永久添加 SSH 密钥
【发布时间】:2018-03-21 13:16:25
【问题描述】:

为了访问我的远程 git,我每次推送或拉取时都会添加对 SSH 的引用:

GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa" git pull origin master

有没有办法让 git 记住 SSH,这样我就不需要每次都添加它?

【问题讨论】:

    标签: git bash ssh


    【解决方案1】:

    你可以这样做:

    Host github
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_github
    

    (根据需要替换用户和主机名,以及身份文件)

    ~/.ssh/config

    【讨论】:

    • 它只适用于主机、用户和身份文件字段。由于某种原因,未在密钥搜索中使用主机名。库本图 20.04.
    【解决方案2】:

    Git 不关心您的 SSH 密钥。它在后台调用ssh。如果设置了环境变量GIT_SSH_COMMAND,那么它不会使用ssh,而是使用GIT_SSH_COMMAND变量的内容。

    使其永久化的一种选择是编写:

    export GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa"
    

    在您的.profile(或.bash_profile)中,但如果您使用多个远程主机,则弊大于利。

    解决的正确方法是正确配置ssh。编辑文件~/.ssh/config(如果不存在则创建)并放入:

    Host bitbucket.com
    User guy
    IdentityFile = ~/.ssh/id_bit_rsa
    

    当然,将 bitbucket.com 替换为托管您的 Git 存储库的服务器的实际名称(我从密钥文件的“bit”部分猜到 BitBucket)和 guy 用您的主机名。

    【讨论】:

      猜你喜欢
      • 2021-11-29
      • 2011-11-05
      • 1970-01-01
      • 1970-01-01
      • 2018-01-04
      • 2021-05-06
      • 2015-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多