免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
一臺電腦綁定兩個git賬號(GitHub和GitLab)

我自己的git賬號屬于GitHub, 公司使用的是GitLab,公司配備了電腦。電腦已經(jīng)配置了公司的GitLab賬號了。雖然家里也有電腦,但是平時工作的一些總結(jié)什么的,想發(fā)到自己的GitHub上,總不能等到回家的時候再寫上吧~~~所以,我就想在公司電腦的基礎(chǔ)上,配置自己的GitHub

我的配置主要參考了一篇文章《一臺電腦綁定兩個github賬號教程》。配置步驟差不多, 就是對有些地方容易搞錯。本文主要是在這篇文章地基礎(chǔ)上做記錄(色文字為我的記錄)。

思路

ssh 方式鏈接到 Github/GitLab,需要唯一的公鑰,如果想同一臺電腦綁定兩個Github/GitLab 賬號,需要兩個條件:

  1. 能夠生成兩對 私鑰/公鑰
  2. push 時,可以區(qū)分兩個賬戶,推送到相應(yīng)的倉庫

解決方案:

  1. 生成 私鑰/公鑰 時,密鑰文件命名避免重復(fù)
  2. 設(shè)置不同 Host 對應(yīng)同一 HostName 但密鑰不同
  3. 取消 git 全局用戶名/郵箱設(shè)置,為每個倉庫獨立設(shè)置 用戶名/郵箱

操作方法

  1. 查看已有 密鑰
  • Mac 下輸入命令 ls ~/.ssh/,看到 id_rsaid_rsa_pub 則說明已經(jīng)有一對密鑰。如下圖
  1. 生成新的公鑰,并命名為 id_rsa_2 (保證與之前密鑰文件名稱不同即可,文件名最好有意義,否則寫后面的配置的時候?qū)戝e文件名,我的文件名是id_rsa_ljy
  • ssh-keygen -t rsa -f ~/.ssh/id_rsa_2 -C "yourmail@xxx.com"
  • 如下圖

上面命令執(zhí)行完,~/.ssh下就出現(xiàn)了"_ljy"結(jié)尾的文件


  1. .ssh 文件夾下新建 config 文件并編輯,令不同 Host 實際映射到同一HostName,但密鑰文件不同。Host 前綴可自定義,例子中ieit
  1. # default
  2. Host github.com
  3. HostName github.com
  4. User git
  5. IdentityFile ~/.ssh/id_rsa
  6. # two
  7. Host ieit.github.com
  8. HostName github.com
  9. User git
  10. IdentityFile ~/.ssh/id_rsa_2
新建config的圖跟上面3.的圖一樣。之后我把上面的代碼拷過來,修改了Host和HostName(我把Host和HostName都寫一樣的)。具體他們的含義如下 :
  1. #Host myhost(這里是自定義的host簡稱,以后連接遠程服務(wù)器就可以用命令ssh myhost)[注意下面有縮進]
  2. #User 登錄用戶名(如:git)
  3. #HostName 主機名可用ip也可以是域名(如:github.com或者bitbucket.org)
  4. #Port 服務(wù)器open-ssh端口(默認:22,默認時一般不寫此行
  5. #IdentityFile 證書文件路徑(如~/.ssh/id_rsa_*)

引自《Git多賬號配置》,我的配置如下:

  1. 將生成的 id_rsa.pubid_rsa_2.pub內(nèi)容copy 到對應(yīng)的 repo(這里因為公司的配置很早就配置了。我是添加我的GitHub,所以我只做了一步:id_rsa_2.pub內(nèi)容copy 到我的GitHub賬號配置那里,我沒有copy在repo的SSH key。因為我想讓我的這個電腦能訪問到GitHub賬號的所有工程)
  1. 測試 ssh 鏈接
  1. ssh -T git@ieit.github.com
  2. ssh -T git@github.com
  3. # Hi IEIT! You've successfully authenticated, but GitHub does not provide shell access.
  4. # 出現(xiàn)上邊這句,表示鏈接成功
  1. 將項目 clone 到本地, folder-name 是本地文件夾路徑
git clone git@github.com:whatever folder-name
  1. 取消全局 用戶名/郵箱設(shè)置,并進入項目文件夾單獨設(shè)置
  1. # 取消全局 用戶名/郵箱 配置
  2. git config –globalunset user.name
  3. git config –globalunset user.email
  4. # 單獨設(shè)置每個repo 用戶名/郵箱
  5. git config user.email “xxxx@xx.com”
  6. git config user.name “xxxx”


PS:1)git config命令要到工程目錄下(反正就是git目錄)執(zhí)行,否則是出錯的,下面就是不在git目錄下執(zhí)行的結(jié)果:后來我恍然大悟,然后切換到工程目錄下執(zhí)行就OK了。
2)“單獨設(shè)置每個repo 用戶名/郵箱”這個步驟,我就是跑到工程下,執(zhí)行g(shù)it config user.email “xxxx@xx.com”和git config user.name “xxxx”命令。看來以后每次我GitHub/GitLab clone一個新的工程下來,都要在clone完成后,在這個工程目錄下執(zhí)行這兩條語句來配置。【解決辦法】:工作電腦平時使用公司的gitlab比較多,可以把公司的賬戶設(shè)置為全局,然后在單獨的需要用別的賬號的工程下配置對應(yīng)的賬號。這樣就不用頻繁地做這個配置。(這個全局設(shè)置與單獨工程下設(shè)置地順序不做要求
  1. 命令行進入項目目錄,重建 origin (whatever 為相應(yīng)項目地址)(這個步驟我沒做。我直接就是clone了代碼,改一下,看能不能push)
  1. git remote rm origin
  2. git remote add origin git@ieit.github.com:whatever

  1. 成功,可以 push 測試一下
git push origin master

參考資料


本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Git-多賬戶配置SSH免密登錄
一目了然:git命令三種方式實現(xiàn)Gitlab和Github同時登錄
Git認證方式https和ssh的原理及比較
配置多個git遠程倉庫的ssh
同個電腦多個ssh key的配置使用(轉(zhuǎn))
如何為 Git Shell 命令使用不同的私有 SSH 密鑰
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服