TortoiseGit и Pageant должны каждый раз «добавлять ключ» - PullRequest
20 голосов
/ 15 августа 2011

Справочная информация: Я использую git и TortoiseGit с github.com.Мой цикл разработки в локальной ветке .git выглядит следующим образом:

1) Make whatever changes
2) Right-click on directory, choose "Git Commit -> branch"
3) Input the message and commit
4) Right-click on same directory, choose "Git Push"
5) I choose my options and...

В первый раз, когда я делаю это каждый день, Pageant автоматически загружается в фоновом режиме, и его значок появляется на панели задач.Но он не запоминает файл private.ppk, который я ранее загружал днем ​​(или перезагружал) раньше.

Каждый раз, когда мне нужно:

Right-click -> "Add key" -> and then redo 4) and 5) above

, и тогда он работает.Я создал ручную иконку / ярлык, я могу нажать, какие автозагрузки:

"C:\Program Files\TortoiseGit\bin\pageant.exe" c:\path\to\private.ppk

И если я запускаю с этим ярлыком, он загружает ключ в память и работает нормально.


Вопрос: Как я могу заставить TortoiseGit запомнить или передать этот параметр "c: \ path \ to \ private.ppk" на страницу, чтобы при первой автоматической загрузке он также автоматически загружал мойзакрытый ключ?

Можно ли использовать постоянную настройку?

Заранее спасибо!: -)

Ответы [ 4 ]

23 голосов
/ 02 мая 2012

Я просто помещаю ярлык для pageant.exe с моим PPK в папку «Пуск» в меню «Пуск», чтобы он автоматически загружался при загрузке Windows (хотя и запрашивает пароль).

"C:\Program Files\TortoiseGit\bin\pageant.exe" "D:\Dev\Git Private Key.ppk"

20 голосов
/ 13 июня 2013

Все сделано очень быстро и просто, если вы знаете правильные места:

  1. Откройте «TortoiseGit> Настройки» в папке вашего проекта
  2. Перейдите к «Git> Remote»
  3. Выберите правильное происхождение
  4. "Ключ-замазка"> "..."> перейдите к файлу * .ppk
  5. Вуаля!

Или просто вручную добавьте запись "puttykeyfile" в файле "some_project \ .git \ config":

[remote "origin"]
    url = git@github.com:some_one/some_project.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    puttykeyfile = C:\\Users\\some_one\\.ssh\\some_one@some.com\\id_rsa.ppk
0 голосов
/ 06 апреля 2019

Как сказал @Simon East, это правильный способ загрузить нужную ссылку в папку автозагрузки.

Другой способ обойти эту проблему для людей, использующих несколько клавиш, tortoisegit, putty, pageant в командной строке и в проводнике с Tortoisegit, - запускать pageant, когда это необходимо ( при взаимодействии с удаленным репозиторием). И используйте соответствующий ключ для каждого удаленного хранилища.

Я написал оболочку для ssh-клиента Tortoisegit, который проверяет зрелище и загружает ключи в зависимости от того, с каким репозиторием он взаимодействует. На данный момент он проверяет только репозитории github и связывает их ключи. но другие функции bitbuket или gitlabs могут быть добавлены в исходный код .

Он был создан только для личного удобства, так что не бейте меня сильно:)

0 голосов
/ 18 сентября 2016
C:\Program Files\putty\pageant.exe 1.ppk 2.ppk ...
...