git-tf, как мне избежать указания моих учетных данных для каждой проверки

Мой вопрос - это именно название.

Каждый раз, когда я запускаю команду git-tf checkin в моей командной строке, когда он подключается к TFS, он запрашивает мое имя пользователя и пароль. Как я могу избежать этого? Имейте это в виду, чтобы он входил в систему с текущим пользователем или хранил учетные данные где-то в файле конфигурации.

Ответ 1

Самый безопасный способ сделать это - просто не хранить пароль и вместо этого использовать единый вход через Kerberos или NTLM:

Если вы находитесь в Windows и вошли в домен с доверительными отношениями с вашим TFS-сервером, вам не нужно указывать имя пользователя и пароль.

Если вы работаете в Windows и имеете настройку "теневой учетной записи", вам не нужно указывать имя пользователя и пароль. Это происходит, когда у вас нет отношений доверия домена с сервером TFS, но вы вошли на свой локальный компьютер с тем же именем пользователя и паролем, что и учетная запись на вашем сервере TFS.

Если вы находитесь на платформе Unix, вы можете получить единый вход с помощью Kerberos. Скорее всего, это сценарий, когда у вас есть билет с самого сервера Active Directory, например, kinit activedirectory.domain.name.

Аналогично, если вы работаете в Unix и имеете билет Kerberos в KDC, у которого есть доверительные отношения с сервером TFS (почти наверняка сам сервер Active Directory), вам не нужно указывать имя пользователя и пароль. git-tf будет использовать ваши учетные данные для аутентификации.

Если ни одно из них не применяется, вы можете сохранить имя пользователя и пароль в конфигурации git для своего репозитория:

git config git-tf.server.username your-username
git config git-tf.server.password your-password

Обратите внимание, что ваш пароль будет сохранен в файле конфигурации git в виде простого текста. Обязательно установите ACL или разрешения для файлов, чтобы уговорить людей не читать ваш пароль из вашего файла конфигурации. Или вы можете сохранить только имя пользователя, и вам нужно будет вводить только ваш пароль каждый раз.

Ответ 2

Вы можете запретить git сохранять это в проекте.gitconfig с помощью переключателя --global:

git config --global git-tf.server.username your-username  
git config --global git-tf.server.password your-password 

Он будет сохранен в виде обычного текста в вашей системе (C: /Users/your-login/.gitconfig), но по крайней мере он не будет сохранен в файле, который живет в проекте.