1. 程式人生 > 實用技巧 >解決git提交拉取多次輸入使用者名稱密碼與使用者名稱密碼更改問題

解決git提交拉取多次輸入使用者名稱密碼與使用者名稱密碼更改問題

一、解決向github等git版本庫伺服器提交程式碼是老要輸入使用者名稱密碼

我曾經切換過一次github賬號, 似乎還更改過一次github賬號的密碼, 然後呢?
然後就是每次向github提交程式碼時都要輸入使用者名稱密碼(猜測是由於上述原因導致),
每次都是啊, 這也忒麻煩了, 於是就想辦法解決這個問題, 經過一番查詢, 終於找到一個解決辦法, 分享之, 與君共勉 !!

==============

以下操作windows系統建議使用Git Bash來操作

解決方案步驟如下:

  1. 在你的使用者目錄下新建一個文字檔案, 名曰.git-credentials
    使用者目錄:
    • windows: C:/Users/username
    • mac os x: /Users/username
    • linux: /home/username
  2. 在上一步建立的檔案中輸入一下內容:
    https:{username}:{password}@github.com
    當然上述{username}和{password}要換成你的github的賬號名和密碼
  3. 修改git配置
    執行命令git config --global credential.helper store
    上述命令會在~/.gitconfig檔案末尾新增如下配置
        [credential]
            helper = store


經過上述三步配置之後, 你push程式碼到github時, 便無需再輸入使用者名稱密碼了~~

=================
續集......
後來發現, 不用上面三步這麼麻煩, 簡化流程如下:

  1. 在命令列輸入命令:
    git config --global credential.helper store
    ☞ 這一步會在使用者目錄下的.gitconfig檔案最後新增:
        [credential]
            helper = store
  1. 現在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