一臺設(shè)備連接多個Git倉庫

前言

有人說這樣能讓讀者心情愉悅地看文章??~

文章背景

因為自己想試著玩一下git的fork與pull request功能忆家。所以注冊了兩個github賬號來做實驗拆融。結(jié)果發(fā)現(xiàn)之前一直在用的A賬號push是正常的哼凯。新注冊的B賬號push報錯霜运。

Pushing to https://github.com/DistributionCoderXLL/XLLTest.git
remote: Permission to DistributionCoderXLL/XLLTest.git denied to b593771943.
fatal: unable to access 'https://github.com/DistributionCoderXLL/XLLTest.git/': The requested URL returned error: 403

根據(jù)上面的報錯挑童,發(fā)現(xiàn)B賬號DistributiionCoderXLL推送失敗的原因是受限于A賬號b593771943序六。

解決思想

使用多個SSH Key分別作為本地git倉庫與GitHub遠(yuǎn)程倉庫的紐帶,這也是新賬號不能正常push的原因所在

1. 根據(jù)每個賬號郵箱對應(yīng)生成SSH Keys
# 1. 打開ssh存放位置
cd ~/.ssh
# 2.對應(yīng)每個github賬號郵箱生成SSH Key
ssh-keygen -t rsa -C "A郵箱地址" 
ssh-keygen -t rsa -C "B郵箱地址" 
在這個命令下第一個會話的時候悠就,對生成的SSH Key進(jìn)行命名千绪。如id_rsa_github_one、id_rsa_github_two

進(jìn)入~/.ssh路徑下梗脾,可以看到如下幾個文件:

對應(yīng)兩個賬戶的公私鑰文件

2. 將兩個私鑰加入到SSH的agent中
# 1.刪除原有agent中的所有私鑰
ssh-add -D
# 2.對應(yīng)將剛剛生成的私鑰添加到agent中
ssh-add id_rsa_github_one
ssh-add id_rsa_github_two
# 3.查看添加到agent的私鑰列表
ssh-add -l
3.創(chuàng)建映射文件config荸型,來分別映射本地git倉庫與GitHub遠(yuǎn)程倉庫
#1.創(chuàng)建config文件
touch config
# 2.打開編輯config文件
vim config
# 3.編輯內(nèi)容如下

# one(1593771943@qq.com)  //第一個git賬號
Host github.com  //自定義host
HostName github.com  
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github_one  //對應(yīng)的ssh私鑰
User git

# two(m15822049431@163.com)  //第二個git賬號
Host small.github.com  //自定義host
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github_two //對應(yīng)的ssh私鑰
User git
4.遠(yuǎn)程倉庫部署SSH Key
# 1.獲取公鑰內(nèi)容
vim id_rsa_github_one.pub
打開后將文件內(nèi)容全部復(fù)制到剪切板。

分別在網(wǎng)頁上登錄GitHub賬號炸茧,Settings -> SSH and GPG keys -> New SSH key瑞妇,將剛剛復(fù)制到剪切板公鑰內(nèi)容對應(yīng)添加進(jìn)去。

賬號下添加公鑰內(nèi)容位置

點擊Add SSH key按鈕梭冠,進(jìn)行添加辕狰。成功后如下圖:
添加SSH公鑰成功后

5.測試SSH的連通性
ssh -T git@example.com  example.com替換為config文件下對應(yīng)的host名。
image.png

如果連通性沒問題控漠,會返回Hi xxx(你的github賬號名)! You've ...蔓倍。并且返回到網(wǎng)頁上,看到剛才的鑰匙變綠了盐捷。


測試SSH連通性后
6.重新配置每個賬號下項目的遠(yuǎn)程地址

可以回頭重新看一下剛剛config文件對host的配置偶翅。

  1. A賬號設(shè)置的Host為github.com,這個是github默認(rèn)的碉渡,不用管聚谁。
  2. B賬號設(shè)置的Host為small.github.com。但是我們克隆下來的時候滞诺,遠(yuǎn)程倉庫使用的是默認(rèn)的github.com形导。所以我們需要手動更新一下這個賬號下克隆的遠(yuǎn)程倉庫地址。
# 1.cd到B賬號下的本地代碼倉庫
cd /Users/xiaole/XLLIMClient 
# 2.查看此倉庫的遠(yuǎn)程倉庫地址
git remote -v
查看的遠(yuǎn)程倉庫結(jié)果如下:
origin  git@github.com:DistributionCoderXLL/XLLIMClient.git (fetch)
origin  git@github.com:DistributionCoderXLL/XLLIMClient.git (push)

我們看到B賬號下的遠(yuǎn)程倉庫還是git@github.com铭段。并不是我們設(shè)置的git@small.github.com骤宣。所以我們要替換成自己定制的。

# 3.移除原遠(yuǎn)程倉庫
git remote rm origin
# 4.添加自定制遠(yuǎn)程倉庫
git remote add origin git@small.github.com:DistributionCoderXLL/XLLIMClient.git 

大功告成

做完這一切序愚,A,B兩個賬號就可以無沖突地進(jìn)行代碼的commit等限,push爸吮,merge等操作了芬膝。
如果想對這方面有所了解的話,建議大家動手操作一下形娇。你動手做或多或少都會遇到問題锰霜。不得不對國內(nèi)開發(fā)者進(jìn)行一下吐槽。很多人自己都不動手操作桐早,看著不錯就對一些文章進(jìn)行了轉(zhuǎn)載癣缅,導(dǎo)致百度一大堆錯誤的文章,這是很不負(fù)責(zé)任的行為哄酝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末友存,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子陶衅,更是在濱河造成了極大的恐慌屡立,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搀军,死亡現(xiàn)場離奇詭異膨俐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)罩句,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進(jìn)店門焚刺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人门烂,你說我怎么就攤上這事乳愉。” “怎么了诅福?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵匾委,是天一觀的道長。 經(jīng)常有香客問我氓润,道長赂乐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任咖气,我火速辦了婚禮挨措,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘崩溪。我一直安慰自己浅役,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布伶唯。 她就那樣靜靜地躺著觉既,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瞪讼,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天钧椰,我揣著相機(jī)與錄音,去河邊找鬼符欠。 笑死嫡霞,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的希柿。 我是一名探鬼主播诊沪,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼曾撤!你這毒婦竟也來了端姚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤盾戴,失蹤者是張志新(化名)和其女友劉穎寄锐,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尖啡,經(jīng)...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡橄仆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了衅斩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盆顾。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖畏梆,靈堂內(nèi)的尸體忽然破棺而出您宪,到底是詐尸還是另有隱情,我是刑警寧澤奠涌,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布宪巨,位于F島的核電站,受9級特大地震影響溜畅,放射性物質(zhì)發(fā)生泄漏捏卓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一慈格、第九天 我趴在偏房一處隱蔽的房頂上張望怠晴。 院中可真熱鬧,春花似錦浴捆、人聲如沸蒜田。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冲粤。三九已至美莫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間色解,已是汗流浹背茂嗓。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工餐茵, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留科阎,地道東北人。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓忿族,卻偏偏與公主長得像锣笨,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子道批,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,644評論 9 163
  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git错英,從https:/...
    落魂灬閱讀 12,652評論 4 54
  • 中國的傳統(tǒng),過完農(nóng)歷正月十五大年隆豹,過年才算真正的結(jié)束椭岩。華人的傳統(tǒng),還有猜燈謎璃赡、逛廟會等傳統(tǒng)活動判哥,借元宵節(jié)之際聊聊逛...
    霧欣雨鮮閱讀 303評論 6 2
  • 原來一直以為吊蘭是吊起來的塌计,今天才知道并非如此,花盆放在窗臺上侯谁,也同樣能生長的茂盛锌仅。 人在不能自主選擇...
    月下緣鶴閱讀 163評論 0 1
  • 匆忙的日子一旦閑下來,便覺得無聊撲面而來墙贱,這不是孤獨热芹,我知道的,我習(xí)慣不了惨撇。就像現(xiàn)在伊脓,我說不出我心里的話,因為實在...
    北國有雪可南方有佳人閱讀 127評論 0 0