gitlab和github共存

概念:Git是一个版本控制系统(Version Control System , VCS)

1.gitlab如何配置ssh key

2.ssh地址下载和http下载的区别

3.共存

gitlab如何配置ssh key?

打开gitlab网站,点击个人的setting中

选中ssh keys

这里添加ssh,也可以点击generate it按钮,里面有详细的配置方法。

我按照上面的方式

ssh-keygen -t rsa -C 'myEmail@XX.com'


发现这里让我输入一个文件名来保存密钥

如果不想要上面输入,可以在命令中加上 -f 和文件名

直接在命令中带上-f 加保存密钥的文件名

后面要你输入保存文件的密码,直接回车就可以了。

但是这个时候我发现在我Mac上的一个问题:我创建的公钥和密钥都没有保存在~/.ssh目录下,而是保存在当前目录下。那么在使用上面命令创建公钥和密钥的时候给文件名前加上目录

ssh-keygen -t rsa -f ~/.ssh/123 -C 'myEmail@xx.com'

查看新生成的公钥和密钥

然后复制公钥

pbcopy < ~/.ssh/123.pub

粘贴到刚刚打开的网页中,点击保存。

最后发现我的电脑上保存文件名为‘123.pub’,想克隆仓库告知我没有权限,后来又新建了一次,保存名称为id_rsa就可以了。为什么呢?在后面的共存中可以找到解决方法

ssh地址下载和http下载的区别

首先都可以下载,http方式的下载的仓库必须上public状态的。http在push的时候需要验证账号和密码,ssh可以通过密钥进行连接,不需要输入密码。

gitlab和github共存

下面就是本文的重点。我现在遇到这么个问题,公司项目上gitlab管理的,个人想沉淀一些东西放在github上,结果发现两者都需要ssh key,生成的id_rsa在同一台机器上的同一位置,但是账号不同。这样在同一台机器上是冲突的。

思路:创建config文件,根据不同的状态使用不同的公钥

在~ /.ssh 目录下面

touch config

vi config 

配置config的值

开始的时候发现实在找不到host和hostname,经过尝试,把 host 和 hostname 设置成相同的一个值,你打开gitlab网站,在url框中前半部份就是。取出来,写入config文件。网上资源说需要设置config的user.name和user.email。我在config里面设置了User,没有出现冲突的情况。

写的很粗糙,还望指正

我可爱的“串串”
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容