日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

怎样切换git账号密码错误_git中多账号切换问题的解决方案(转)

發(fā)布時間:2024/7/5 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 怎样切换git账号密码错误_git中多账号切换问题的解决方案(转) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

git多賬號切換其實是有https的解決方案的,可以省去ssh配置公鑰相關(guān)的麻煩,不過安全性會降低,后面會提到。

比如你想用A賬號管理本地倉庫repoA,用B賬號管理本地倉庫repoB。

那么首先,看一下gloabal和system的config:

git config --global -l

git config --system -l

主要是看有沒有credential.helper把賬號密碼存起來了。因為https的url方式每次push的時候都要輸入密碼,比較麻煩,一般就會用credential.helper把賬號密碼存在global里了。這樣對單用戶沒問題,但多用戶時就會有問題。如果存的是A賬戶,那在repoB里push的時候肯定就會permission denied。所以看看global或者system哪個設置了保存就unset一下:

git config --global --unset credential.helper

git config --system --unset credential.helper

第二個命令可能需要權(quán)限吧。

接下來就是對本地倉庫的config設置了。比如進入本地倉庫repoA之后,看一下url:

git remote -v

https開頭的就是用的https了,git@ 開頭的就是用的ssh了,一般用瀏覽器打開github倉庫頁面之后在頁面里copy的都是https。一般是長這個樣子:

然后在https://和http://github.com之間加上用戶名@ ,用set-url設置就好:

git remote set-url origin https://UserA@github.com/UserA/repoA.git

當然默認是origin分支,要設置其他分支也一樣。@ 前的用戶名和倉庫權(quán)限的擁有者要對應起來。

改好之后,這時候push,就要輸入一下用戶A的密碼,然后就能push上去了。對于repoB也是一樣。每次push都需要輸入密碼了。那么為了避免麻煩,針對每一個本地倉庫,設置一下local的credential.helper:

git config --local credential.helper store

這樣賬號密碼就只針對當前倉庫保存,對其他倉庫沒有影響了。針對每一個需要管理的本地倉庫,都需要按以上步驟設置一次url和credential.helper,設置好之后,就能一直正常push了。

總結(jié)一下:

1. 清空global和system的credential.helper

2. 對每一個本地倉庫,設置一下url和local的credential.helper

關(guān)于安全性的問題,用git credentials存憑證的話,密碼是以明文形式存儲的,不論是git-credentials=store還是git-credentials=winstore(windows),git-credentials=osxkeychain(Mac),都有辦法直接看到密碼明文,除非用git-credentials=cache。當然也可以自定義,參考7.14 Git 工具 - 憑證存儲。

總結(jié)

以上是生活随笔為你收集整理的怎样切换git账号密码错误_git中多账号切换问题的解决方案(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。