我正在使用该命令,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*/
Run Code Online (Sandbox Code Playgroud)
但不确定第二个和第三个命令会是什么样子,如果它们存在的话。
可以使用 来填充缓存git credential approve,如git-credential(1)手册页中所述,但有一种更简单的方法可以执行您想要的操作。
您使用的凭证助手可以是任意的 shell 脚本,它可以根据环境生成标准格式。所以你可以这样做:
git config credential.helper '!f() { printf "%s\n" "username=$USER" "password=$PASS"; };f'
Run Code Online (Sandbox Code Playgroud)
当然,在很多环境中,使用无密码的 SSH 密钥更容易也更安全,但是在某些情况下,例如容器构建,不允许以安全的方式这样做,因此我上面给出的示例可能会有所帮助。
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |