配置git push不用每次輸入用戶名和密碼


設置git配置

對於 HTTP 協議 git 擁有一個憑證系統來處理這個事情
  • 默認所有都不緩存。 每一次連接都會詢問你的用戶名和密碼。

  • "cache" 模式會將憑證存放在內存中一段時間。 密碼永遠不會被存儲在磁盤中,並且在15分鍾后從內存中清除。

  • "store" 模式會將憑證用明文的形式存放在磁盤中,並且永不過期。 這意味着除非你修改了你在 Git 服務器上的密碼,否則你永遠不需要再次輸入你的憑證信息。 這種方式的缺點是你的密碼是用明文的方式存放在你的 home 目錄下。

  • 如果你使用的是 Mac,Git 還有一種 “osxkeychain” 模式,它會將憑證緩存到你系統用戶的鑰匙串中。 這種方式將憑證存放在磁盤中,並且永不過期,但是是被加密的,這種加密方式與存放 HTTPS 憑證以及 Safari 的自動填寫是相同的。

  • 如果你使用的是 Windows,你可以安裝一個叫做 “winstore” 的輔助工具。 這和上面說的 “osxkeychain” 十分類似,但是是使用 Windows Credential Store 來控制敏感信息。 可以在 https://gitcredentialstore.codeplex.com下載。
    你可以設置 Git 的配置來選擇上述的一種方式

git config --global credential.helper cache 

部分輔助工具有一些選項。 “store” 模式可以接受一個 --file <path> 參數,可以自定義存放密碼的文件路徑(默認是~/.git-credentials)。 “cache” 模式有 --timeout <seconds> 參數,可以設置后台進程的存活時間(默認是 “900”,也就是 15 分鍾)。 下面是一個配置 “store” 模式自定義路徑的例子:

git config --global credential.helper store --file ~/.my-credentials 

Git 甚至允許你配置多個輔助工具。 當查找特定服務器的憑證時,Git 會按順序查詢,並且在找到第一個回答時停止查詢。 當保存憑證時,Git 會將用戶名和密碼發送給 所有 配置列表中的輔助工具,它們會按自己的方式處理用戶名和密碼。 如果你在閃存上有一個憑證文件,但又希望在該閃存被拔出的情況下使用內存緩存來保存用戶名密碼,.gitconfig 配置文件如下:

[credential] helper = store --file /mnt/thumbdrive/.git-credentials helper = cache --timeout 30000 

3.修改git配置文件

在用戶文件夾下找到 .gitconfig文件,用編輯器或者vim打開,如果之前有配置過用戶名和密碼就會在里面看到

[user] name = xxx email = xxx@xxxxx.com 

在后面追加如下配置並保存

[credential] helper=store 

下次執行git push再次輸入用戶名之后,git就會記住用戶名密碼並在上述目錄下創建.git-credentials文件,記錄的就是輸入的用戶名密碼。

本文只是做收藏,原文地址:https://www.jianshu.com/p/bcfb6a0d5c7a


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM