git ssh配置

今天配置了github的ssh访问密钥,同时也遇到了一些问题,这里记录一下.

  • 生成新SSH密钥

    $ ssh-keygen -t rsa -b 4096 -C "[email protected]"

    这将创建以所提供的电子邮件地址为标签的新 SSH 密钥。

    > Generating public/private rsa key pair.    

    提示您“Enter a file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。 这将接受默认文件位置。

    > Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter]    

    在提示时输入安全密码。

    > Enter passphrase (empty for no passphrase): [Type a passphrase]
    > Enter same passphrase again: [Type passphrase again]    
  • 将 SSH 密钥添加到 ssh-agent

    ssh-agent用于管理ssh的密钥密码,不用每次访问时都输入密钥密码

    # 在后台启动 ssh-agent
    $ eval $(ssh-agent -s)
    > Agent pid 59566    

    将 SSH 私钥添加到 ssh-agent。 如果您创建了不同名称的密钥,或者您要添加不同名称的现有密钥,请将命令中的 id_rsa 替换为您的私钥文件的名称。

    $ ssh-add ~/.ssh/id_rsa

    将 SSH 密钥添加到 GitHub 帐户

    测试账户是否配置成功

    $ ssh -T [email protected]

    如果连接成功控制台会返回你的用户名信息.

    > Hi username! You've successfully authenticated
  • ssh配置多账户
    因为实际使用中你可能会同时使用github,gitlab,gitee等,不同平台需要配置不同的访问域名或密钥,这是可以通过git的config配置来实现
    在~/.ssh/目录下新建config文件,并将你需要支持的git平台配置填写进去.

    示例如下:

Host github.com
   User git
   Hostname github.com
   IdentityFile ~/.ssh/id_rsa

Host gitlab.com
   User git
   Hostname gitlab.com
   IdentityFile ~/.ssh/id_rsa 
  • 问题
    我这边配置完成后,不知道什么原因,github测试总是提示连接超时,但是gitlab可以正常访问.可能是防火墙问题(实际关闭防火墙后还是无法访问)

    异常信息:

    $ ssh -T [email protected]
    ssh: connect to host github.com port 22: Connection timed out

    解决方式:
    官方解释说可能由于防火墙等原因造成ssh连接异常,这时通过https连接可以正常的访问到github.

    要测试通过 HTTPS 端口的 SSH 是否可行,请运行以下 SSH 命令:

    $ ssh -T -p 443 [email protected]
    > Hi username! You've successfully authenticated, but GitHub does not
    > provide shell access.

    config配置方式如下:

    Host github.com
    Hostname ssh.github.com
    Port 443

    然后直接测试github连接:

    $ ssh -T [email protected]
    Hi liulei3! You've successfully authenticated, but GitHub does not provide shell access.

原文地址:https://www.cnblogs.com/chengmuyu/p/12244337.html

时间: 2024-12-16 13:26:58

git ssh配置的相关文章

android studio在windows上设置git/ssh

windows果然是与众不同的,凡事都要那么麻烦一点点(当然..是对程序员来说..) 一开始,我想用cygwin里的git,就省得我再多装一套软件,配置也可以统一,但事实证明不行 在android studio里将git配置为cygwin版后,点测试虽然能正常运行报告版本号,但在clone时直接失败,不管ssh是选builtin还是native. 那好,装上msys的git后,仍然要为ssh配置折腾.它有两种配法,但本质方法是一样的,就是设置环境变量GIT_SSH为指向对应ssh程序的路径 首先

git ssh 生成步骤

Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git config --global user.name "xuhaiyan" $ git config --global user.email "[email protected]" 二.生成SSH密钥过程:1.查看是否已经有了ssh密钥:cd ~/.ssh如果没有密钥则

Git SSH Key 生成步骤

Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git config --global user.name "your-name" $ git config --global user.email "your-email" 二.生成SSH密钥过程: 1.查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此

Git 进阶指南(git ssh keys / reset / rebase / alias / submodule )

在掌握了基础的 Git 使用 之后,可能会遇到一些常见的问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 origin 仓库信息 如何配置 git ssh keys 如何撤销修改 遇到冲突了怎么解决 git stash / alias / submodule 的使用问题等 问:如何修改 origin 仓库信息? 1.添加 origin 仓库信息 git remote add origin <git仓库地址>

Git使用:Linux(Ubuntu 14.04 x64)下安装GIt并配置连接GitHub

github是一个非常好的网络代码托管仓库,知晓许久,但是一直没有用起来,最近才开始使用git管理自己的文档和代码. Git是非常强大的版本管理工具,今天就告诉大家,如何在Linux下安装GIt,并且做相关配置,与GitHub上的仓库链接.我安装的环境是Ubuntu 14.04,64位的 1. 安装 Linux下安装 使用命令apt-get来安装 sudo apt-get install git 2. 配置 配置用户名密码 git config --global user.name "xxx&q

Git 常用配置和使用

Git:是一个分布式的源代码管理工具,Linux内核的代码就是用Git管理的所以它很强,也很快, 和 Vss/SVN比起来 本地Git初始化配置及其使用: 1. 初始化本地Git库:打开Git Bash 命令行>> git init 2. 要使用GitHub,首先需要创建SSH Key,SSH将用来加密本机与远端服务器之间的通信,同时也是识别你对代码所做的变更的方法. SSH Key可以使用Git命令行来产生,如果你已经有一个SSH Key,那么在这里也可以直接使用. 要使用Git创建SSH

Linux下git安装配置

一.Linux下git安装配置 2013-07-28 20:32:10|  分类: 默认分类 |  标签:linux  git  server  |举报|字号 订阅 http://abomby.i.sohu.com/blog/view/168755260.htm http://www.linuxidc.com/Linux/2011-12/48555.htm Git是分布式的版本控制系统,实际上是不需要固定的服务器的,Git与svn的最大区别是,它的使用流程不需要联机,可以先将对代码的修改,评论,

转:Git SSH Key 生成的步骤

一 .github的SSH配置如下: 设置Git的user name和email: $ git config --global user.name "XXX" $ git config --global user.email "[email protected]" 二.生成SSH密钥过程:1.查看是否已经有了ssh密钥:cd ~/.ssh如果没有密钥则不会有此文件夹,有则备份删除2.生存密钥: $ ssh-keygen -t rsa -C "[email 

github的SSH配置如下

Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git config --global user.name "xuhaiyan" $ git config --global user.email "[email protected]" 二.生成SSH密钥过程: 1.查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密