同一服务器,同一托管平台,多个账号问题
1、添加key
我们暂且以oschina为例。为了更好的说明问题,我们在oschina平台分别用账号111新建项目test111和账号222新建项目test222,记得项目私有化哦,不然我们也没啥说的了。
在我们想要把项目test111 clone下来之前,需要先按照下面的步骤设置关联的key
ssh-keygen -t rsa -C "111@163.com" // 邮箱是账号111对应的邮箱
整个过程就回车完事,操作起来那是相当的简单!但是还没完,可能你注意到了,回车的过程中,有一句话是这样提示的:
Your public key has been saved in /root/.ssh/id_rsa.pub.
没错,我们现在打开这个文件
cat /root/.ssh/id_rsa.pub
拷贝文件里面的内容, 然后打开 http://git.oschina.net/keys 这个页面,新建key,把复制的内容粘贴进来就好了。
这样一来,我们就把服务器上面的key跟oschina平台进行了关联。
2、clone项目
接着我们通过git clone命令把test111项目clone下来,记得clone的地址是ssh而不是https哦,这个时候会提示我们输入用户名和密码,其分别是oschina的账号和密码。
如果你手贱是以https的方式进行clone的,可以通过下面的命令重新设置远程仓库地址(没有则可跳过此步骤)
// 移除之前的远程仓库地址 git remote remove origin // 新增远程仓库地址为ssh,非https git remote add origin git@git.oschina.net:wwolf/test111.git
3、多账号兼容问题
到这里,对于test111项目pull push操作基本上都是没有问题的了。如果说用户222想在这台服务器上面对项目test222进行管理,我们直接执行git clone git@git.oschina.net:222/test222.git之后,报错了,提示如下:
Access denied. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
为什么呢?首先最重要的问题肯定是key的问题了!因为我们之前并未层在这台服务器增加key关联到用户222的oschina账号!那我们就按照步骤1重新在服务器上为用户222添加一个key吧,不过需要注意的是,我们的key保存的文件要重命名了,不然可就把用户111创建的key覆盖了!
ssh-keygen -t rsa -C "账号222的邮箱@qq.com" //接下来会提示我们想要把key保存在哪个文件,重新输入文件名即可 Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa_2 //接着回车回车回车完事,重要的话说三遍!
然后我们登录账号222的oschina账号添加key
但是问题出现了,这个时候我们重新clone test222依旧提示我们没权限,怎么回事???本篇文章的中心主题曝光了!废话了一堆,开始说重点--------------------------
其实这个时候我们clone test222项目时,git是拿默认的id_rsa.pub文件里面的key去对比的,这肯定是有问题的嘛,因为222账号并没有添加这个key!那也就是说我们这里如果clone test222的时候让git拿着id_rsa_2.pub文件里面的key去验证不就完事了么?是的,就是这样!我们看实现步骤:
首先我们让git识别我们新增的key
ssh-agent bash ssh-add ~/.ssh/id_rsa_2
接着我们在~/.ssh/ 目录下新建或者修改config文件
#Host 是你远程仓库的地址,注意哦,如果有些服务器做的ip端口转发,这里不要带上端口号 Host git.oschina.net #HostName 是远程仓库的地址,同样如果做的端口转发也不应带端口号 HostName git.oschina.net #Port 端口号,如果有做转发需要在这里填写端口号,没有就不必要填 #Port 8800 #用户 User 111 #识别key的文件 IdentityFile ~/.ssh/id_rsa #都指向同一个平台的话,下面的Host需要做个处理,因为我们在用这个key的时候根据Host从上到下进行查找,不做修改肯定会先查找到第一个key,依旧无效,随便改就好了,其他参数不做特殊处理 Host git222.oschina.net HostName git.oschina.net #Port 8800 User 222 IdentityFile ~/.ssh/id_rsa_2
可以看到,我们对222用户的Host做了处理,那么我们就需要修改下222的远程仓库地址了
// 原仓库地址 git@git.oschina.net:222/test222.git // 修改为 git@git222.oschina.net:222/test222.git
也就是说这个时候用户222只需要执行命令
git clone git@git222.oschina.net:222/test222.git
就可以了!就可以了!!!
cd test222/
//发现git pull git push也都没有任何问题
同一服务器,不同托管平台,多个账号问题
这多个平台的问题基本上就简单了,为了举例说明,我们用gitlab平台的333账号的项目test333进行测试,注意哦,我们是注册第三个账号在上面两个账号的基础之上进行的测试
git clone git@gitlab.com:333/test333.git
// 可想而知,同样是没权
因为没那么多邮箱,我们注册gitlab依旧使用的是用户222的邮箱,不过这对我们的操作没任何影响,无非就是多创建一个id_rsa_3文件而已,鉴于此,我们直接拷贝id_rsa_2.pub里面的key到gitlab平台。
然后在~/.ssh/config文件内添加gitlab平台的配置即可
Host gitlab.com HostName gitlab.com #Port 8800 User 333 //因为gitlab的邮箱跟用户222一致,这里用这个key,如果不一致,你仍然需要生成新的key,这里引用新的key文件 IdentityFile ~/.ssh/id_rsa_2
PS:Git多个账户冲突问题解决
由于自己有两个github账号,最近在push项目时,突然发现一直提示的permission denied. 细看原来是用的另外一个github的账号,不是当前origin所在的github对应的账号。于是查找了一stackoverflow上面的解决方http://stackoverflow.com/questions/14689788/multiple-github-accounts-what-values-for-host-in-ssh-config。
清除git的全局设置
git config --global user.name "your_name" git config --global user.email "your_email"
然后重新设置每个项目的非全局的用户名和邮箱:
git config user.name "your_name" git config user.email "your_email"
SSH配置
在~/.ssh目录下面,使用ssh-keygen -C “your_email” -t rsa 生成公私秘钥,当有多个github账号的时候,可以生成多组rsa的公司密钥。然后配置~/.ssh/config文件(如果没有的话请重新创建一个):
#第一个github项目账号 Host first_project HostName github.com User first_user IdentityFile ~/.ssh/id_rsa_first #第二个git项目账号 Host second_project HostName github.com User second_user IdentityFile ~/.ssh/id_rsa_second
从first项目拉取代码:
git pull first master
git多账号登录
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]