【Git】关于git的ssh-key:解决本地多个ssh-key的问题

在设置github的时候,官方的说明文档要求备份当前的id_rsa,然后生成一份新的私钥用于github的登陆。如果真这样做,那么新的私钥是无法再继续登陆之前的机器的。这种方法有点暴力…
还好ssh可以让我们通过不同的私钥来登陆不同的域。

首先,在新增私钥的时候,通过指定不同的文件名来生成不同的私钥文件

[python] view plain copy

  1. ssh-keygen -t rsa -f ~/.ssh/id_rsa.work -C "Key for Work"
  2. ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "Key for GitHub"

新增ssh的配置文件,并修改权限

[python] view plain copy

  1. touch ~/.ssh/config
  2. chmod 600 ~/.ssh/config

修改config文件的内容

[python] view plain copy

  1. Host *.workdomain.com
  2. IdentityFile ~/.ssh/id_rsa.work
  3. User lee
  4. Host github.com
  5. IdentityFile ~/.ssh/id_rsa.github
  6. User git

这样在登陆的时候,ssh会根据登陆不同的域来读取相应的私钥文件

[python] view plain copy

    1. ssh -T [email protected]
时间: 2024-10-07 16:29:36

【Git】关于git的ssh-key:解决本地多个ssh-key的问题的相关文章

关于git的ssh-key:解决本地多个ssh-key的问题

在设置github的时候,官方的说明文档要求备份当前的id_rsa,然后生成一份新的私钥用于github的登陆.如果真这样做,那么新的私钥是无法再继续登陆之前的机器的.这种方法有点暴力- 还好ssh可以让我们通过不同的私钥来登陆不同的域. 首先,在新增私钥的时候,通过指定不同的文件名来生成不同的私钥文件 ssh-keygen -t rsa -f ~/.ssh/id_rsa.work -C "Key for Work" ssh-keygen -t rsa -f ~/.ssh/id_rsa

在老DELL电脑上制作基于SSH的小型本地Git服务器

硬件情况: DELL OPTIPLEX 745 Core 2 64位 1G 内存 160G 硬盘 Ubuntu 12.04.5 LTS 32位(因为内存小于2G),字符界面(不运行X Windows,为了省内存) 步骤: 1.创建一个用户git,创建主目录,适当修改一下权限: 2.参考http://git-scm.com/book/zh/ 4.2节的步骤,在主目录下执行: $ git clone --bare https://github.com/Ricky-Gong/*.git  (总共弄下来

tortoise git使用 git版本库的rsa key来进行ssh连接

接触git以来 ,开始时用了命令行,但是命令行总归不如图形化菜单方便明了,而GIT本身自带的GUI又用的不习惯,以前用过许久的TOTORISE SVN,幸好有TORTOISE GIT,这个版本图形化工具. 安装了GIT,再安装TORTOISE GIT,界面就比较熟悉了. 一直困扰了好几天,今天总算找到一个比较靠谱的快速方便的使用它来生成key ssh的方法: 1.运行tortoise自带的puttykeygen. 2.生成密钥 rsa,如果需要再做相关对应的password设置等,并将生成的ke

Git配置非22端口,解决:ssh: connect to host xxx port 22: Connection timed out fatal: The remote end hung up unexpectedly

背景:私自搭建了Git服务器,而Git本身就是SSH进行连接的,而Git命令上默认只能通过22端口实现. 解决方法: 第一种: 在系统的用户目录下的文件夹:.ssh 如果该路径下没有config文件,则创建一个. config中添加如下内容: 如是以域名访问的则添加如下内容:(注意修改xxx为你的远程仓库的名称) Host xxx HostName xxx.com Port 3333 如是以IP访问的,则添加如下内容:(注意修改IP为你的远程仓库IP) Host "211.111.xx.xxx&

通过git从码云克隆项目到本地

Git从码云或者Github 克隆代码到本地 1.下载安装Git,傻瓜式下一步下一步即可... 2.配置Git: 2.1.选择你要clone到本地的路径:右键--->$ Git Bash Here,弹出Linux命令窗口:$ cd ~直接回退到当前盘符下,再输入:$ cd E:\Code 就可以进入你自己的目录: 2.2.$ git config --global user.name "你自己的用户名"    注意空格,换成自己的用户名Github或者码云(克隆哪个的就用对应的用

Git 创建远程仓库并克隆到本地,创建本地仓库并推送到远程仓库

配置用户信息 配置的是你个人的用户名称和电子邮件地址.这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,会随更新内容一起被永久纳入历史记录 git config --global user.name "testerDong" git config --global user.email "[email protected]" 1.创建远程仓库,克隆远程仓库到本地 a.先在GitHub上创建一个远程仓库 b.复制该仓库SSH地址 c.git

【Git】git使用 - 冲突conflict的解决演示

冲突的解决 (如果git使用不熟练)建议在push不了时,pull之前.在本地创建一个新的分支并commit到local,以保证本地有commit记录,万一出什么问题,可以找回代码,以免代码丢失. (更甚者,把整个文件夹备份,不然出现找不回代码那就开心了) 多人开发时Git下冲突的产生和解决 演示 项目中有一个文件test.txt,其内容为(以下是在github仓库中截得文件内容): 1.保证项目的正确性,先pull到最新版本. 2.修改local的test.txt的文件内容,修改后的内容是:

ubuntu上开启ssh服务,并搭建基于ssh的git服务器

维基百科上SSH的定义如下 Secure Shell(縮寫为SSH),由IETF的網路工作小組(Network Working Group)所制定:SSH為一项建立在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境. 安装ssh服务器 安装openssh-server $sudo apt-get install openssh-server 安装成功之后,通过以下命令来确保server已经启动 $sudo start ssh 如果出现以下结果,则说明已经开始

git文件太大上传不了解决办法

git命令行 git提交失败的解决办法 1 提交后提示 fatal: recursion detected in die handler 问题原因: 问题原因是http.postBuffer默认上限为1M所致.在git的配置里将http.postBuffer变量改大一些即可,比如将上限设为500M: git config --global http.postBuffer 524288000 在哪里执行以上命令呢? 打开git bash命令行工具. 注意要加上--global.网上很多资料都没加这

多人开发时Git下冲突的产生和解决

冲突的产生 很多命令都可能出现冲突,但从根本上来讲,都是merge 和 patch(应用补丁)时产生冲突. 而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突. git pull会自动merge,repo sync会自动rebase,所以git pull和repo sync也会产生冲突.当然git rebase就更不用说了. 冲突的类型 逻辑冲突 git自动处理(合并/应用补丁)成功,但是逻辑上是有问题的. 比如另外一个人修改了文件名,但我还使用老的文件名,这种情况下自动处理是能成