2010-01-04 2 views
189

Есть ли способ настроить TortoiseHg, чтобы сохранить мой пароль?Сохранить пароль в TortoiseHg

У меня есть проект, размещенный на Google Code, который я получаю с помощью TortoiseHg. Всякий раз, когда я хочу внести изменения в код Google, TortoiseHg предлагает мне ввести имя пользователя и пароль. Google Code требует, чтобы я использовал автоматически сгенерированный пароль, и он становится достаточно повторяющимся, чтобы каждый раз просматривать его.

ответ

71

предупреждение безопасности

Хотя этот ответ принимаются от 2017-09-15, это не рекомендуемого решения. Вы никогда не должны хранить свои пароли в виде обычного текста. Вместо этого используйте расширение mercurial_keyring. См. Здесь another answer.


Вы можете изменить URL-адрес своего push-адреса до https://username:[email protected]/repo.

Это объясняется в Google Code's и Mercurial's Часто задаваемые вопросы.

EDIT: Mercurial FAQ объясняет еще один способ сделать это:

С Mercurial 1.3 вы можете также добавить раздел аутентификации в файл hgrc:
 
[auth] 
example.prefix = https://hg.example.net/ 
example.username = foo 
example.password = bar 
+0

Я должен был знать, что это будет FAQ ... спасибо! –

+48

Это плохой ответ! Вы никогда не должны хранить пароли открытого текста в ЛЮБОЙ файл ... !! Другой вариант (с большим количеством голосов) с использованием mercurial_keyring - единственное, что нужно сделать! –

+6

+1. Учитывая, что 'hg push' является неразрушающим (вы всегда можете« нежелательных наборов изменений »hg strip), нажатие на удаленный репозиторий вряд ли является высокоприоритетной операцией. По этой причине хранилище паролей с открытым текстом часто бывает достаточно полным, если известно о последствиях безопасности. –

12

Если вы хотите, чтобы настроить его с помощью Доступно TortoiseHg, диалоговое окно настройки хранилища. После открытия диалога перейдите на вкладку «Синхронизация». Вы можете добавить путь с информацией об аутентификации HTTPS.

http://tortoisehg.bitbucket.io/manual/2.9/settings.html#module-web.settings

250

Оба существующих ответы предлагают хранить имя пользователя и пароль в незашифрованном виде в простого текста, который немного нет-нет.

Вместо этого вы должны использовать расширение Keyring, поскольку оно специально предназначено для безопасного сохранения паролей аутентификации. Она уже идет в комплекте с TortoiseHg, поэтому все, что вам нужно сделать, это активировать его, написав следующее в вашем Mercurial.ini файла:

[extensions] 
mercurial_keyring= 

Вы также должны связать имя пользователя с нажимным URL исправив ваше хранилище конкретного .hg \ hgrc файл, как в примере ниже:

[paths] 
default = https://<your_username>@bitbucket.org/tortoisehg/thg 

Для получения более подробной информации о ассоциируя имя пользователя с URL, см Repository Configuration (SMTP) раздел страницы Keyring расширения.

+2

Я просто попробовал это решение, и он отлично справился с Windows 7. Очень приятно! Благодаря! – mateuscb

+0

работает хорошо для меня - но я думаю, вам также нужно указать имя пользователя, либо под заголовком [auth], либо изменить путь к репозиторию, например, имя пользователя @ host (согласно приведенной выше ссылке Keyring) –

+0

вы правы - Я обновлю свой ответ – Vlad

1

Просто измените файл hgrc в .hg каталоге вашего локального хранилища, так это выглядит следующим образом:

[paths] 
default = https://name:[email protected]/hg/ 

где имя это Ваш логин Google Code без GMAIL/GoogleMail бита, например, 'fredb' (не fredb @ gmail.com), пароль - это пароль, созданный Google, и yourproj - это название вашего проекта GC. Так что-то вроде:

default = https://fred:[email protected]/hg/ 
+11

Никогда не храните пароли в текстовом виде. НИКОГДА! Используйте mercurial_keyring - TortoiseHG, а затем запрашивает пароль только один раз. –

+1

Никогда не говори никогда :) Да, SSH-ключ предпочтительнее Keyring, Keyring предпочтительнее, чем обычный текст, но на самом деле есть разные ситуации. P.S. был поддержан как ответ «keyring», так и этот. –

141

Три ступени, часы screenshot. Примечание. Это сохраняет ваш пароль в виде открытого текста.

enter image description here

+3

отлично ... работал как очарование. благодаря! – mujimu

+4

2 палец вверх для визуального объяснения, thx! – citykid

+37

похоже, что это также хранит пароль в виде открытого текста - если у вас включено расширение keyring, тогда поле пароля отключается – Vlad

-1

Это работает для меня, используя SSH. Я знаю пароль в текстовом виде, но это не проблема в этом проекте. Вы должны изменить myUser и MyOPas для своих учетных данных и путь к: TortoisePlink.exe. Редактировать mercurial.ini

[reviewboard] 
password = myPass 
[ui] 
username = myUser 
ssh = "C:\Program Files\TortoiseHg\lib\TortoisePlink.exe" -l myUser -pw myPass 
Смежные вопросы