生成 SSH 密钥

先打开一个git窗口,生成ssh密钥

如果打开的不是git窗口,而是cmd窗口,则需要先切换到C:\Users\用户名\.ssh目录下。

下面这条指令的your_emailyouremail.com可以随便写。

ssh-keygen -t rsa -C "your_email@youremail.com"

指令运行的过程中会要求填写生成的密钥文件的名称,任意填写即可,比如填写gitee_rsa,如下图所示。

查看生成的密钥

然后,查看刚刚生成的密钥
每台电脑都有一个正在使用电脑的用户。比如我的电脑的用户名是12524
不出意外的话,在系统盘的用户目录下有.ssh文件。

C:\Users\12524\.ssh


会看到id_rsa/id_rsa.pub这两个刚才生成的密钥文件。其中id_rsa.pub文件中的内容就是SSH公钥,用记事本打开它。

填写密钥

点击码云Github的设置页面,转到SSH密钥的配置。
下面以码云为例。

随便起一个标题,然后把id_rsa.pub的内容粘贴到公钥中去。再点击确定。

配置本地 config 文件

配置格式:

Host two.gitee.com
HostName gitee.com
PreferredAuthentications publickey
User Two
IdentityFile ~/.ssh/id_rsa

Host后面填写你用来链接仓库时的名称,HostName后面写网址,PreferredAuthentications publickey照抄,User后面任意填写,意思是用户的名字,IdentityFile后面填写刚刚生成的密钥的文件路径。
(如果看不懂,没关系,先看下一节——如何使用这些配置去连接和部署仓库)

我自己的配置文件内容如下。

测试配置是否正确

首先,你可以测试一下配置是否正确,
假设你的Hosttwo.gitee.com,那么:

ssh -T git@two.gitee.com

正常情况下,会显示:

添加config(全局或本仓库)

如果以前已经配置过了,只是为了配置多个账号的git,这步也需要稍微注意。
因为这一步是用来告诉Git,作者的身份。对于多人共同使用的电脑,如果每个仓库有不同的作者,那么就应该针对仓库设置不同的config。

如果是第一次用,那么这步是必需的,如果不设置,则Git将会提示:

Author identity unknown

*** Please tell me who you are.。

当然,这个设置个假的,也没事。

全局config示例如下:

git config --global user.name "shandianchengzi"
git config --global user.email "xxxx@xxx.com"

只在本仓库添加时,只需去掉--global即可。

连接远程仓库

然后就可以git remote add连接到远程仓库了。

可以先用git remote -v检查一下当前目录下有没有链接别的仓库,如果有链接就先用git remote remove移除。

注意,用git remote add连接远程库的时候,也是用的Host中填的东西。

git remote add origin git@two.gitee.com:yourName/repositoryname.git

其中git@two.gitee.com:yourName/repositoryname.git是克隆仓库的时候对应的那个路径,注意将gitee.com修改为自己填写的Host即可。

然后就能愉快地git push了。

有多个账号的时候,只要保证Host互不相同即可

【经验】Git仓库多账号管理与部署|SSH密钥设置的更多相关文章

  1. Git管理多个SSH密钥,Git多帐号配置

    版权声明:转载须标明本文转自严振杰的博客 https://blog.csdn.net/yanzhenjie1003/article/details/69487932版权声明:转载必须注明本文转自严振杰 ...

  2. SourceTree Git可视化管理工具通过 ssh 密钥登录

    整个流程分三步:① 生成SSH密钥:② Github/Gitee/Coding 代码托管平台绑定公钥:③ SourceTree 拉取代码 1.生成 SSH 密钥 这里直接使用 SourceTree 来 ...

  3. CentOS搭建Git服务器及权限管理

    声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...

  4. 本地创建 Git 仓库并关联 Phabricator

    前提条件: 1.熟悉 Git 操作. 2.在搭建好的 Phabricator 上已注册账号,并开通相关权限. 方法一: 1.在本地创建Git仓库. 2.ssh-keygen -t rsa生产公钥私钥, ...

  5. 如何配置 SSH 密钥连接 Git 仓库

    SSH 是 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:是建立在应用层基础上的安全协议. SSH 是目前较可靠,专为远程登录会话和其 ...

  6. 本地git仓库常用操作

    SSH配置: 本机创建SSH key $ ssh-keygen -t rsa -C "youremail@example.com" 将SSHkey添加到git仓库:id_rsa.p ...

  7. GIT:如何管理本机的多个ssh密钥(多个远程仓库账号)

    最近在学习git,首先推荐一个个人认为很不错的git教程,学习后,从git新手变成了git入门了,仍需继续努力. 廖老师的git学习教程(其他git基础知识点,本篇博客就不做介绍了,自己看教程学习吧, ...

  8. 多人合作项目如何去管理git仓库

    前记:在git之前依稀记得有SVN去管理代码仓库,现在多用git去管理我们的代码:现在一般的项目大多数是多人同时开发,这样就会存在一个问题就是如何去协调开发:这也是lz当前使用git开发管理的些许经验 ...

  9. windows下添加多个git仓库账号

    当使用git方式下载时,如果没有配置过ssh key,会提示错误(git clone支持https和git(即ssh)两种方式下载源码) 当需要在机器上使用不同的git账户,这就需要知道如何在机器上添 ...

  10. 本机添加多个git仓库账号

    我们可能会需要在一台电脑上以不同的github账户去使用git,这时就需要去解决如何管理本机上的多个ssh key的问题了. 生成新ssh key 如果我们电脑上已经存在了一个ssh key,那么我们 ...

随机推荐

  1. 管理虚拟机(virtual-manager)

  2. [BZOJ3569] DZY Loves Chinese II 题解

    考虑不联通的情况.图不好做,就造一棵生成树出来,由于是无向图,所以只有树边和返祖边. 发现在一条树边断开后,生成树会分成两个连通块,由覆盖这条树边的返祖边链接,只有这些返祖边也全部断开,原图才会不联通 ...

  3. 库卡KUKA机器人KRC4伺服马达维修指导分析

    通常情况下,库卡机器人伺服电机是实现机器人的关键组件,它提供了动力.位置和速度控制力和扭矩控制以及闭环控制等功能,使得库卡机器人能够在各种应用场景中发挥机器本身的性能. 一. 如果KUKA库卡机器人K ...

  4. CentOS7脚本检测SpringBoot项目JAR包变化后自动重启

    #!/bin/bash # 文件目录 fileDir=/usr/local/project/back logDir=/usr/local/project/logs # 设置需要检测的文件路径 file ...

  5. win32绘图:绘制直线 矩形 圆形 曲线等

    查看代码 #include <Windows.h> //画点 void PaintSetPixel(HDC hdc) { for (short i = 0; i < 20; i++) ...

  6. [第二章]ABAQUS CM插件中文手册

    ABAQUS Composite Modeler User Manual(zh-CN) Dassault Systèmes, 2018 注: 源文档的交叉引用链接,本文无效 有些语句英文表达更易理解, ...

  7. 【记录】C++STL容器/特有类 使用积累

    STL容器共有成员函数 size() max_size() empty() begin() end() clear() [链接]csdn_STL中所有容器共有成员函数 双端队列deque 1.创建与初 ...

  8. 这几天用ng5做了一个俄罗斯方块

    为什么要做这个东西呢? 嗯 为了证明自己会ng吧,最主要的是这几天的工作全是静态页,实在无聊枯燥的很.当然了,肯定还有其他妙不可言的原因,这里不想说出来. 我也忘记我是什么时候有想到用ng做俄罗斯方块 ...

  9. k8s dial tcp 127.0.0.1:6443: connect: connection refused排查流程及解决思路

    前言 k8s 集群中,使用 kubelet 报错,如下: The connection to the server 127.0.0.1:6443 was refused - did you speci ...

  10. 【WPF开发】HandyControl Growl控件Error通知不自动消失的问题

    需求 HandyControl Growl在Error类型的通知不自动消失,此时需要他跟其他的统一. 找寻原因 那么翻翻代码看看为啥不消失呗 1.这是决定关闭通知的计时器 2.这是通过_staysOp ...