Tortoisegit запрашивает пароль
Я только начал работать над Git. Я использую windows 7 и установил msysgit(1.7.8) и Tortoisegit (1.7.6).
Репозиторий создается на сервере Linux, который доступен через локальную сеть. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу клонировать репозиторий с помощью Tortoisegit, он запрашивает пароль, и я не уверен, какой пароль он запрашивает.
В то же время я мог бы клонировать репозиторий с помощью Git Gui и выполнять все операции.
Может кто-нибудь, пожалуйста, помогите мне понять, почему Tortoisegit спрашивает пароль когда Git Gui этого не делает.
Я попытался удалить Git и Tortoisegit, а затем установить снова, но безуспешно.

15 ответов:
мой коллега решил проблему. Шаги:
- щелкните правой кнопкой мыши - > TortoiseGit - > Настройки - > Сеть
- SSH-клиент указывал
C:\Program Files\TortoiseGit\bin\TortoisePlink.exe- изменен путь к
C:\Program Files (x86)\Git\bin\ssh.exeАльтернативный Путь:
C:\Users\...\AppData\Local\Programs\Git\usr\bin\ssh.exe
Если вам нужно использовать имя пользователя/пароль, есть гораздо более простое решение, чем нынешний #2 Ответ:
Right-click --> Tortoise Git --> Settings --> Git --> Credential --> Choose "Wincred, all Windows users" --> Hit applyпри следующем вводе пароля для РЕПО этот пароль будет автоматически сохранен.
Если вы используете репозиторий, который требует ключи SSH, а не имя пользователя/пароль (похоже, что это была оригинальная проблема OP) нужно
- откройте SSH ключ в PuTTY gen (устанавливается рядом с черепахой Git)
- в PuTTY gen сохраните ключ как ключ шпатлевки.
- в репозитории,
Right-click --> Tortoise Git --> Settings --> Git --> Remotes. Найдите свой пульт (обычно 'происхождения') затем загрузите ключ шпатлевки с шага 2.
сделать это без ключей...
Правой Кнопкой Мыши на папке
Выберите tortoiseGit- > настройки - >Git - > Remote
Выберите origin (или то, что вы обозначили своим основным пультом дистанционного управления)при использовании URL-адреса в этом формате.
Https://USERNAME:PASSWORD@URLгде Username-ваше имя пользователя
: двоеточие разделяет имя пользователя и пароль и должно быть там
Пароль-это ваш пароль
@ разделяет учетные данные с вашим url
URL-это url-адрес, который вы будете использовать для подключения .ГИТ ресурсов
Спасибо идет к Kamaci
сохранение имени пользователя и пароля с помощью TortoiseGit
сохранение ваших учетных данных в TortoiseGit довольно легко. Сохраняет необходимость вводить имя пользователя и пароль каждый раз, когда вы делаете тянуть или толкать.
создайте файл _netrc со следующим содержимым:
машина github.com
войдите в свой логин
пароль Ваш парольскопируйте файл в C:\Users\ (или другое место; это просто случилось быть там, где я положил его)
перейдите в командную строку, введите setx home C:\Users\
Примечание: Если вы используете что-то раньше, чем Windows 7, команда setx может не работать для вас. Вместо этого используйте set и добавьте переменную домашней среды в Windows с помощью дополнительных параметров в разделе "Мой компьютер".
кредит К: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/
один из способов сделать это
- создать пару клавиш с помощью PuttyGen, (или импортировать В.ППК если вы уже есть ключ)
- загрузите закрытый ключ в peagent
- импортируйте открытый ключ на сервер gitosis (предоставьте свой открытый ключ администратору)
- а затем использовать plink в качестве SSH-клиента
plink работает изначально с peagent для получения загруженного ключа.
вы можете найти плинк.exe вместе с peagent и другими вкусности в стандартном распределении замазки
чтобы использовать его, перейдите по ссылке:
настройки TortoiseGit - > сеть - > SSH клиент .
по умолчанию это содержит путь к TortoisePlink.exe, вместо этого дайте путь к plink.exe
в качестве альтернативы вы можете использовать SSH(.exe) в дистрибутиве msys(git), но тогда вы не можете использовать закрытый ключ .комбинация формата ppk / Peagent. Вам нужно либо экспортировать свой ключ в формат OpenSSH через PuttyGen, либо создать пару ключей с помощью вместо этого ssh-keygen.
для автоматизации аутентификации либо использовать:
- SSH ключи, как уже указывали другие, или
- встроенный помощник учетных данных.
очевидно, что не храните свой пароль в текстовом файле, если РЕПО не имеет значения.
TortoiseGit >1.8.1 устанавливает помощника git-credential-winstore который предоставляет локальный API для доступа и хранения вашей регистрационной информации в существующем, локальном Windows Хранилище Учетных Данных.
вы можете увидеть сохраненные учетные данные, перейдя в Панель управления → Учетные записи пользователей → диспетчер учетных данных и выбрав "учетные данные Windows". Записи, начинающиеся с "git:", относятся к git-credential-winstore.
вы можете настроить wincred для каждого репозитория:
(GUI)
- перейдите в хранилище в Проводнике.
- контекстный щелчок → TortoiseGit → настройки → Git → учетные данные
- учетные данные помощник: wincred-это только репозиторий
- при следующей аутентификации с помощью РЕПО учетные данные будут сохранены.
(CLI, ШИКАРНЫЙ)
cmdkey /add:git:https://[email protected] /user:USERNAME /pass:PASSWORD@" [credential] helper = wincred "@ | Out-File -FilePath $repoRoot\.git\config -Appendвы можете перечислить все учетные данные, хранящиеся в репозитории с
cmdkey /list:git:*
После сохранения Пароли не отображаются с помощью cmdkey (http://ss64.com/nt/cmdkey.html)чтобы перечислить все учетные данные с помощью пароли нужно использовать Windows API. Для powershell есть CredMan:
. .\CredMan.ps1 .\CredMan.ps1 -ShoCred
URL и заголовок окна TortoisePlink указывают на то, что tortoise пытается использовать ssh в качестве транспортного протокола. git поддерживает более одного транспортного протокола, включая доступ к файловой системе и доступ ssh. В вашем вопросе вы описываете, что хотите получить доступ к удаленному РЕПО с помощью доступа к файловой системе. В этом случае ваш удаленный url должен выглядеть примерно так
file://server/path/to/repo. Еще раз проверьте URL-адрес удаленного РЕПО.
Что я сделал, чтобы исправить это (windows):
- Open PuttyGen импортируйте мой ssh-ключ и преобразуйте его в ключ putty, сохраните как открытые, так и закрытые части .папка ssh (%userprofile%.ssh)
- откройте Putty и перейдите в Connection->SSH->Auth, затем установите там свой файл закрытого ключа.
- вернитесь к сеансу, выберите Настройки по умолчанию и нажмите Сохранить.
- Теперь попробуйте снова клонировать, и вам будет предложено ввести парольную фразу на ваш ключ ssh, введите его и его должен работать.
к сожалению, на моей машине с Windows 8 решение с переориентацией SSH-клиента не работало. Решение, которое решило проблему для меня здесь: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/
поскольку ни одно из решений, представленных здесь, не работало для меня, и после многих разочарований с решениями, которые я нашел в интернете, мне наконец удалось исправить это на моей машине.
Я не знаю, когда и как я настроил свою замазку TortoiseGit, чтобы всегда использовать один конкретный ключ, и, конечно же, это создало все проблемы, когда я попытался подключиться к другому серверу с новой парой ключей.
так как исправить проблему и как сказать, если у вас на самом деле есть такая же проблема, как я имел:
- скачать
plink.exeна своей машине из здесь- Откройте командную строку windows в том же каталоге, где вы загрузили свой
plink.exe- выполните следующую команду:
plink -v <path_to_your_git_clone_repo_link>- посмотрите на выход и посмотреть, если у вас есть линия, как
Reading private key file "C:\Path\To\Some\privateKey.ppk"- если вы видите строку, как это, и это не шпатлевка ключевой файл, который вы хотите использовать, то просто пойти и переименовать / удалить / переместить этот файл, так что plink не может загрузить его дальше время
- после переименования проблемного файла все должно работать так, как ожидалось, если вы запустите команду из пункта 3. вы должны увидеть, что плинк теперь не может загрузить это
ppkфайл и после этого он должен вывести что-то вродеPageant is running. Requesting keys.и мы действительно хотели этогото есть, если кто-нибудь знает, как я могу отключить этот "глобальный ключ шпатлевки по умолчанию", пожалуйста, дайте мне знать в комментариях, и я обновлю этот ответ с информацией.
Pramodtech это перестала работать для меня с текущей версией официального клиента Windows Git. Он хранит исполняемый файл ssh в
Git\usr\binвместоGit\binсейчас (начиная с версии 2.5 выпущенной в августе 2015 года).так что иди в
TortoiseGit > Settings > Networkи измените путь клиента SSH на:
C:\Program Files\Git\usr\bin\ssh.exe(или каков бы ни был путь к вашей установке Git)
пожалуйста, не URL-адрес удаленного источника РЕПО может вызвать эту проблему. У меня было старое РЕПО, которое отлично работало, и новое, которое я только что клонировал, которое спрашивало у меня пароль.
при сравнении информации в
Settings > Git > Remote > UrlЯ видел, что тот, который работал, имел:
[email protected]:githubAccount/repoName.gitновый, который не работал, имел
httpsадрес.пожалуйста, см. скриншот ниже.
Командная строка Tortoise git DOS перестала запрашивать мой пароль, как только я разместил свои личные и открытые ключи C:\Users\.СШ реж. Я на Windows 7.
была та же проблема. В моем случае не было пароля, который я мог бы ввести там. Соединение было настроено как SSH, но не было никаких ключей, определенных для РЕПО.
Проверьте: конфигурация SSH TortoiseGIT. Эти инструкции предназначены для cloudforge, но для других служб вы должны сделать то же самое, просто предоставьте свой открытый ключ поставщику репозитория git.



Comments