簡體   English   中英

通過命令行以編程方式設置 git 憑證緩存

[英]Programmatically set git credential cache through command line

我正在使用命令git config credential.helper 'cache'所以我不必重復輸入我的用戶名和密碼。 但是,這要求我設置一次憑據。 有沒有一種方法可以初始化緩存,從可在 runitme 中使用的環境變量(例如$USER$PASS )中的值管道中,但不能長期存儲它?

我不想使用git config user.name "your username"和等效的password命令,因為它會嘗試以明文形式存儲密碼。 我基本上只想在腳本中運行

git config credential.helper 'cache'
git config /*set $USER in cache*/
git config /*set $PASS in cache*/

但不確定第二個和第三個命令會是什么樣子,如果它們存在的話。

git-credential(1)手冊頁中所述,可以使用git credential approvegit credential approve緩存,但有一種更簡單的方法可以執行您想要的操作。

您使用的憑證助手可以是任意的 shell 腳本,它可以根據環境生成標准格式。 所以你可以這樣做:

git config credential.helper '!f() { printf "%s\n" "username=$USER" "password=$PASS"; };f'

當然,在很多環境中,使用無密碼的 SSH 密鑰更容易也更安全,但是在某些情況下,例如容器構建,不允許以安全的方式這樣做,因此我上面給出的示例可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM