本地管理多個git賬號

2021-09-24 08:00:05 字數 1483 閱讀 5232

前言

本來電腦本地只存在乙個git賬號,用於提交專案**。近期重新搭建了部落格,站點託管在github上。在gitee上又新建了乙個倉庫,用來備份部落格。首次提交到github或者gitee上,會提示輸入密碼,再次提交,可能不再提示密碼,當你做push操作時,會提示你沒有許可權,因為git無法區分到底是用哪個賬號進行操作。

如果能夠通過乙個檔案來管理多個賬號,並且根據不同的倉庫來自動選擇不同的賬號來執行git操作,那將會是一件多麼愉快的事。下面我們就來完成這件愉快的事。

配置ssh金鑰

這裡涉及到三個git賬號,公司git賬號:company_account,部落格站點git賬號:website_account,部落格備份git賬號:blog_account

1.分別生成company_account,website_account,blog_account對應的rsa和rsa.pub檔案

ssh-keygen -t rsa -c "company_account"

複製**

缺省會放在/users/username/.ssh路徑下,預設檔名為id_rsa,為了區分,改檔名為company_id_rsa。回車後,會提示設定密碼。

同樣生成website_account和blog_account,分別改檔名為website_id_rsa和blog_id_rsa,操作完後,在.ss**件夾中會有這樣6個檔案 company_id_rsa company_id_rsa.pub, website_id_rsa website_id_rsa.pub, blog_id_rsa blog_id_rsa.pub

2.分別把company_id_rsa.pub,website_id_rsa.pub,blog_id_rsa.pub裡的內容複製到公司、github、gitee的ssh裡面

配置config檔案

vim ~/.ssh/config

複製**

#compay

host ***xx.com

hostname ***xx.com

user compay_account

identityfile ~/.ssh/company_id_rsa

#website

host github.com

hostname github.com

user website_account

identityfile ~/.ssh/website_id_rsa

#blog

host gitee.com

hostname gitee.com

user blog_account

identityfile ~/.ssh/blog_id_rsa

複製**

host: 伺服器 hostname: 主機名或網域名稱,建議使用網域名稱 user: 使用者名稱或者郵箱 identityfile: rsa檔案路徑

後續使用git,會通過config檔案來自動選擇賬號。

本地git配置多個git賬號

ssh keygen t rsa c 你的郵箱 回車,輸入檔名,輸入密碼,再次輸入密碼 有多個賬號的話重複以上步驟,金鑰生成完後在.ssh目錄下建立config檔案 內容如下 host github.com hostname github.com user user1 preferredauthen...

git 關聯多個git賬號

參考部落格,在此基礎上,筆者還加了一些自己的備註 ssh keygen t rsa f ssh id rsa gitlab ucd c yourmail com 複製pub檔案內容到gitlab的ssh上 host github.com hostname github.com preferredau...

刪除本地git賬號

git賬號密碼輸入錯誤後,再次操作會自動使用上次輸入錯誤的賬號密碼 方法1 設定清空git儲存的賬號密碼並每次操作時強制輸入賬號密碼,即git不自定儲存賬號密碼 git config system unset credential.helper設定git自動儲存輸入的賬號密碼 git config ...