位置: 编程技术 - 正文
推荐整理分享git多账号登录问题解析(git 登陆用户),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:git 多用户,git 多用户,git多用户管理及权限控制,git登陆账号,git一个账号在两台电脑登录,git怎么登陆账号,git 多账号,git 多账号,内容如对您有帮助,希望把文章链接给更多的朋友!
同一服务器,同一托管平台,多个账号问题
1、添加key
我们暂且以oschina为例。为了更好的说明问题,我们在oschina平台分别用账号新建项目test和账号新建项目test,记得项目私有化哦,不然我们也没啥说的了。
在我们想要把项目test clone下来之前,需要先按照下面的步骤设置关联的key
ssh-keygen -t rsa -C "@.com" // 邮箱是账号对应的邮箱
整个过程就回车完事,操作起来那是相当的简单!但是还没完,可能你注意到了,回车的过程中,有一句话是这样提示的:
Your public key has been saved in /root/.ssh/id_rsa.pub.
没错,我们现在打开这个文件
cat /root/.ssh/id_rsa.pub
拷贝文件里面的内容, 然后打开 这个页面,新建key,把复制的内容粘贴进来就好了。
这样一来,我们就把服务器上面的key跟oschina平台进行了关联。
2、clone项目
接着我们通过git clone命令把test项目clone下来,记得clone的地址是ssh而不是https哦,这个时候会提示我们输入用户名和密码,其分别是oschina的账号和密码。
如果你手贱是以https的方式进行clone的,可以通过下面的命令重新设置远程仓库地址(没有则可跳过此步骤)
3、多账号兼容问题
到这里,对于test项目pull push操作基本上都是没有问题的了。如果说用户想在这台服务器上面对项目test进行管理,我们直接执行git clone git@git.oschina.net:/test.git之后,报错了,提示如下:
为什么呢?首先最重要的问题肯定是key的问题了!因为我们之前并未层在这台服务器增加key关联到用户的oschina账号!那我们就按照步骤1重新在服务器上为用户添加一个key吧,不过需要注意的是,我们的key保存的文件要重命名了,不然可就把用户创建的key覆盖了!
然后我们登录账号的oschina账号添加key
但是问题出现了,这个时候我们重新clone test依旧提示我们没权限,怎么回事???本篇文章的中心主题曝光了!废话了一堆,开始说重点--------------------------
其实这个时候我们clone test项目时,git是拿默认的id_rsa.pub文件里面的key去对比的,这肯定是有问题的嘛,因为账号并没有添加这个key!那也就是说我们这里如果clone test的时候让git拿着id_rsa_2.pub文件里面的key去验证不就完事了么?是的,就是这样!我们看实现步骤:
首先我们让git识别我们新增的key
接着我们在~/.ssh/ 目录下新建或者修改config文件
可以看到,我们对用户的Host做了处理,那么我们就需要修改下的远程仓库地址了
也就是说这个时候用户只需要执行命令
git clone git@git.oschina.net:/test.git
就可以了!就可以了!!!
cd test///发现git pull git push也都没有任何问题
同一服务器,不同托管平台,多个账号问题
这多个平台的问题基本上就简单了,为了举例说明,我们用gitlab平台的账号的项目test进行测试,注意哦,我们是注册第三个账号在上面两个账号的基础之上进行的测试
git clone git@gitlab.com:/test.git// 可想而知,同样是没权
因为没那么多邮箱,我们注册gitlab依旧使用的是用户的邮箱,不过这对我们的操作没任何影响,无非就是多创建一个id_rsa_3文件而已,鉴于此,我们直接拷贝id_rsa_2.pub里面的key到gitlab平台。
然后在~/.ssh/config文件内添加gitlab平台的配置即可
PS:Git多个账户冲突问题解决
由于自己有两个github账号,最近在push项目时,突然发现一直提示的permission denied. 细看原来是用的另外一个github的账号,不是当前origin所在的github对应的账号。于是查找了一stackoverflow上面的解决方 -C “your_email” -t rsa 生成公私秘钥,当有多个github账号的时候,可以生成多组rsa的公司密钥。然后配置~/.ssh/config文件(如果没有的话请重新创建一个):
从first项目拉取代码:
Git 常用命令整理 前言这里就不介绍git了,表一看到命令行就怕怕,常用的命令也就这些,基本满足%以上的项目需求,非常实用。正文一、常用git命令1.1gitcloneurl[director
Formatting Long Lines 格式化多行字符的shell脚本 很久没更新了,很久没看脚本了想想应该继续看脚本了#FormattingLongLines#!/bin/sh#Aversionoffmt,usingnroff.Addstwousefulflags:-wXforlinewidth#and-htoenablehyphenationforbetterfil
个shell脚本 猜数字游戏代码 原本书上这个例子是教调试脚本的,它故意给出的脚本中有几个错误,教我们认识系统提示的错误,并修改运行。但比较难写出来,所以把修改好了的
标签: git 登陆用户
本文链接地址:https://www.jiuchutong.com/biancheng/371440.html 转载请保留说明!友情链接: 武汉网站建设