Программно установить git кеш учетных данных через командную строку - PullRequest
0 голосов
/ 24 января 2020

Я использую команду 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*/

, но не уверен, как будут выглядеть вторая и третья команды, если они существуют.

1 Ответ

1 голос
/ 24 января 2020

Можно заполнить кэш с помощью git credential approve, как описано на странице руководства git-credential(1), но есть более простой способ сделать то, что вы хотите.

Помощник по учетным данным, который вы можете использовать, может быть произвольным сценарием оболочки, который может создавать стандартный формат в зависимости от среды. Таким образом, вы можете сделать это:

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

Конечно, во многих средах проще и безопаснее использовать пароль S SH без пароля, но в некоторых ситуациях, таких как создание контейнера, это не так. разрешите это безопасным способом, так что пример, который я привел выше, может быть полезным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...