Tortoisegit с запросом пароля

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

Tortoisegit error

Ответ 1

Мой коллега решил проблему. Шаги:

  • Щелкните правой кнопкой мыши → 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

Если вам нужно использовать имя пользователя/пароль, существует гораздо более простое решение, чем текущий ответ # 2:

Right-click --> Tortoise Git --> Settings --> Git --> Credential --> Choose "Wincred, all Windows users" --> Hit apply

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


Если вы используете репозиторий, для которого требуются ключи SSH, а не имя пользователя/пароль (что похоже на исходную проблему OP), вам нужно

  • Откройте ключ SSH в PuTTY gen (устанавливается самостоятельно рядом с Tortoise Git)
  • В PuTTY gen сохраните ключ как ключ PuTTY.
  • В репозитории Right-click --> Tortoise Git --> Settings --> Git --> Remotes. Найдите свой пульт (обычно "источник" ), затем загрузите ключ PuTTY с шага 2.

Ответ 3

Сделать это без ключей...

Щелкните правой кнопкой мыши на своей папке
Выберите tortoiseGit- > settings → Git → Удаленный
Выберите источник (или то, что вы отметили на своем основном пульте)

В этом URL-адресе используется этот формат.

Https://USERNAME:[email protected]

Где USERNAME - это ваше имя пользователя
: двоеточие отделяет имя пользователя и пароль и должно быть там
ПАРОЛЬ - ваш пароль
@отделяет учетные данные с вашим URL-адресом URL - это URL, который вы хотите использовать для подключения к ресурсу .git

Спасибо, Kamaci

Ответ 4

Сохранение имени пользователя и пароля с помощью TortoiseGit

Сохранение данных для входа в TortoiseGit довольно просто. Сохраняет необходимость вводить имя пользователя и пароль каждый раз, когда вы нажимаете или нажимаете.

  • Создайте файл с именем _netrc со следующим содержимым:

    машина github.com
    логин yourlogin
    пароль yourpassword

  • Скопируйте файл в 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/

Ответ 5

Один из способов сделать это -

  • создать пару ключей с помощью PuttyGen (или импортировать в .ppk, если вы уже есть ключ)
  • загрузить закрытый ключ в peagent
  • импортировать открытый ключ для сервера gitosis (предоставить ваш открытый ключ вашему администратору)
  • а затем использовать plink как клиент SSH

plink работает изначально с peagent для извлечения загруженного ключа.

вы можете найти plink.exe вместе с peagent и другими лакомствами в стандартном распределении шпатлевки

чтобы использовать его:

Настройки TortoiseGit → Сеть → клиент SSH.

по умолчанию это содержит путь к TortoisePlink.exe, а не путь plink.exe

В качестве альтернативы вы можете использовать ssh (.exe) в распределении msys (git), но затем вы не можете использовать закрытый ключ в формате .ppk/Peagent. Вам либо нужно экспортировать свой ключ в формат OpenSSH через PuttyGen, либо создать пару ключей, используя ssh-keygen.

Ответ 6

Чтобы автоматизировать аутентификацию, используйте:

  • SSH-ключи, как уже указывали другие, или
  • встроенный вспомогательный помощник.

Очевидно, не храните свой пароль в текстовом файле, если репо не важно.

TortoiseGit > 1.8.1 устанавливает помощника git -credential-winstore, который предоставляет локальный API для доступа и хранения вашей информации для входа в систему существующий, локальный хранилище учетных данных Windows.

Вы можете просмотреть сохраненные учетные данные, перейдя в Панель управления → Учетные записи пользователей и rarr; Диспетчер учетных данных и выбор "Учетные данные Windows". Записи, начинающиеся с git: ", относятся к git -credential-winstore.

Вы можете настроить wincred для каждого репозитория:

(GUI)

  • Перейдите в репозиторий в Проводнике.
  • Контекст-клик → TortoiseGit → Настройки → Git → Credential
  • Credential helper: wincred - только этот репозиторий
  • В следующий раз, когда вы выполните аутентификацию с помощью репо, учетные данные будут сохранены.

(CLI, POSH)

  • 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

Ответ 7

URL и заголовок окна TortoisePlink показывают, что черепаха пытается использовать ssh в качестве транспортного протокола. git поддерживают более одного транспортного протокола, включая доступ к файловой системе и доступ к SSH. В вашем вопросе вы описываете, что хотите получить доступ к удаленному репо при доступе к файловой системе. В этом случае ваш удаленный URL-адрес должен выглядеть примерно как file://server/path/to/repo. Повторите попытку URL удаленного репо.

Ответ 8

У меня была такая же проблема. Моя среда - это окна 10 с TortoiseGit 2.3.0.0 и git версия 2.11.0.windows.1

Ниже была решена моя проблема:

  • Щелкните правой кнопкой мыши → TortoiseGit → Настройки → Сеть
  • Обновить SSH-клиент к C:\Program Files\ Git\usr\bin\ssh.exe

введите описание изображения здесь

Ответ 9

Что я сделал, чтобы исправить это (windows):

  • Open PuttyGen импортирует мой ssh-ключ и преобразует его в ключ-шпатель, сохраняя как открытые, так и частные части в папке .ssh(% userprofile%.ssh)
  • Откройте Putty и перейдите в Connection- > SSH- > Auth, затем установите там свой файл приватного ключа.
  • Вернитесь на сеанс, выберите "Настройки по умолчанию" и нажмите "Сохранить".
  • Теперь попробуйте снова клонировать, и вас попросят ввести ключевую фразу на ваш ssh-ключ, введите его, и он должен работать.

Ответ 11

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

Я не знаю, когда и как я настраивал свою 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"
  • Если вы видите строку, подобную этой, и это не ключевой файл шпатлевки, который вы хотите использовать, просто перейдите в меню и переименуйте/удалите/переместите этот файл, чтобы в следующий раз он не мог загрузить его.
  • После того, как вы переименовали проблемный файл, все должно работать так, как ожидалось, если вы запустите команду из пункта 3. вы должны увидеть, что plink теперь не может загрузить этот файл ppk, и после этого он должен выводить что-то вроде Pageant is running. Requesting keys., и мы на самом деле хотел этого

Вот и все, если кто-нибудь знает, как я могу отключить этот "глобальный ключ закладок по умолчанию", пожалуйста, дайте мне знать в комментариях, и я обновлю этот ответ с информацией.

Ответ 12

Ответ 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)

введите описание изображения здесь

Ответ 13

Пожалуйста, не удаляйте URL-адрес удаленного источника репо. У меня было старое репо, которое отлично работало, и новый, который я только что клонировал, запрашивал у меня пароль.

При сравнении информации в Settings > Git > Remote > Url я увидел, что тот, который работал, имел:

[email protected]:githubAccount/repoName.git

Новый, который не работал, имел адрес https.

См. также снимок экрана ниже.

введите описание изображения здесь

Ответ 14

Tortoise GIT Командная строка DOS перестала запрашивать мой пароль, как только я поместил свои личные и открытые ключи в папку C:\Users \.ssh. Я нахожусь в Windows 7.

Ответ 15

Была та же проблема. В моем случае не было пароля, в который я мог бы войти. Соединение было настроено как SSH, но не было ключей, определенных для репо.

Отъезд: Конфигурация TortoiseGIT SSH. Эти инструкции предназначены для cloudforge, но для других служб вам нужно сделать то же самое, просто предоставите свой открытый ключ вашему поставщику репозитория git.

Ответ 16

Я только что столкнулся с подобной проблемой сегодня и смог исправить ее, установив последнюю версию git с https://git-scm.com/download/win