Linux

Git 設定自動儲存帳號、密碼教學

介紹如何設定 git 自動儲存帳號與密碼,避免每次輸入帳號與密碼的麻煩。

Git 儲存帳號、密碼

每次使用 git 的 pushpull 等指令,都會需要輸入 git 伺服器的帳號與密碼,如果不想每次執行都要打一次帳號與密碼,可設定讓 git 自動將帳號與密碼儲存起來:

# 設定自動儲存帳號與密碼
git config --global credential.helper store

接著執行任何一個需要帳號與密碼的 git 指令(例如 pushpull 等):

# 下載更新內容
git pull

當輸入完帳號與密碼之後,git 就會自動將這一組帳號與密碼儲存至 ~/.git-credentials 這個設定檔中,若需要修改帳號或密碼,可以直接從這個檔案來修改,而這個檔案的權限只有自己能夠讀取。

另外一種更改帳號與密碼的方式是直接將 ~/.git-credentials 這個檔案刪除,再重新執行一次需要帳號與密碼的 git 指令,讓 git 重新建立該設定檔。

這樣設定好之後,未來當 git 需要帳號與密碼的時候,就會自動從設定檔中讀取,使用者就可以不需要再以鍵盤手動輸入,對於程式開發者來說會方便很多。

Git 暫存帳號、密碼

如果因為安全性考量,不希望將帳號與密碼儲存在硬碟中,可以改用 cache 模式,讓帳號與密碼自動儲存在記憶體中(維持 15 分鐘):

# 設定自動暫存帳號與密碼(存在記憶體 15 分鐘)
git config --global credential.helper cache

這樣當使用者輸入帳號與密碼時,git 就會自動將帳號與密碼暫時存放在記憶體中 15 分鐘,在這段時間之內,當 git 需要帳號與密碼時,就會直接使用這個暫存的帳號與密碼,不需要再次輸入。

如果要自訂帳號與密碼的暫存時間,可以用 --timeout 參數指定時間(單位為秒),例如將暫存時間設定為一小時:

# 帳號與密碼暫存一小時
git config credential.helper 'cache --timeout=3600'

Mac 鑰匙圈存取

若在 Mac 的系統上,也可以使用 Mac 內建的鑰匙圈存取功能來存放 git 的帳號與密碼,讓系統統一進行加密保護:

# 設定自動儲存帳號與密碼(Mac 鑰匙圈存取)
git config --global credential.helper osxkeychain

參考資料:StackOverflow

Share
Published by
Office Guide

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

9 個月 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

9 個月 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

9 個月 ago

Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例

本篇介紹如何在 Windows...

11 個月 ago

Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例

介紹如何在 Linux 中使用...

11 個月 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

11 個月 ago