一、解決向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 = alice@aol.com [credential] helper = store
git config --global user.email "alice@aol.com"
操作的就是上面的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