解決git提交拉取多次輸入使用者名稱密碼與使用者名稱密碼更改問題
一、解決向github等git版本庫伺服器提交程式碼是老要輸入使用者名稱密碼
我曾經切換過一次github賬號, 似乎還更改過一次github賬號的密碼, 然後呢?
然後就是每次向github提交程式碼時都要輸入使用者名稱密碼(猜測是由於上述原因導致),
每次都是啊, 這也忒麻煩了, 於是就想辦法解決這個問題, 經過一番查詢, 終於找到一個解決辦法, 分享之, 與君共勉 !!
==============
以下操作windows系統建議使用Git Bash來操作
解決方案步驟如下:
- 在你的使用者目錄下新建一個文字檔案, 名曰
.git-credentials
使用者目錄:- windows:
C:/Users/username
- mac os x:
/Users/username
- linux:
/home/username
- windows:
- 在上一步建立的檔案中輸入一下內容:
https:{username}:{password}@github.com
當然上述{username}和{password}要換成你的github的賬號名和密碼 - 修改git配置
執行命令git config --global credential.helper store
上述命令會在~/.gitconfig
檔案末尾新增如下配置[credential] helper = store
經過上述三步配置之後, 你push程式碼到github時, 便無需再輸入使用者名稱密碼了~~
=================
續集......
後來發現, 不用上面三步這麼麻煩, 簡化流程如下:
- 在命令列輸入命令:
git config --global credential.helper store
☞ 這一步會在使用者目錄下的.gitconfig檔案最後新增:[credential] helper = store
- 現在push你的程式碼 (
git push
), 這時會讓你輸入使用者名稱密碼, 這一步輸入的使用者名稱密碼會被記住, 下次再push程式碼時就不用輸入使用者名稱密碼啦!
☞這一步會在使用者目錄下生成檔案.git-credential
☞git config --global
命令實際上在操作使用者目錄下的.gitconfig
檔案, 我們cat一下此檔案(cat .gitconfig
), 其內容如下:[user] name = alice email = [email protected] [credential] helper = store
git config --global user.email "[email protected]"
操作的就是上面的email
git config --global credential.helper store
操作的就是上面最後一行的值
二、解決github等git版本庫伺服器使用者名稱密碼變更時,本機使用git時提交、拉取錯誤的問題
出現錯誤的原因是,github上的使用者名稱密碼更改了,而本機還在使用之前記錄的使用者名稱密碼,所以會出現使用者名稱密碼沒有許可權等問題來進行提交拉取,可以通過以下兩種方式解決
方式一:
1、通過以上講解,我們知道,.git-credentials檔案儲存的是https:{username}:{password}@github.com
使用者名稱密碼等資訊;.gitconfig儲存的是使用者名稱、郵箱、以及是否記錄下第一次賬號密碼行為的資訊,
2、這樣我們可以修改這兩個檔案中的內容來進行賬號密碼的變更;(windows系統可以通過 控制面板\使用者帳戶\憑據管理器 來進行相應的增刪改查)
方式二:
1、在命令列輸入命令:
git config --global --unset credential.helper
來進行清楚掉.gitconfig檔案中 [credential]helper = store資訊;
2、在命令列輸入命令: git config --global credential.helper store