Подтвердить что ты не робот

Как я могу запускать команды git push/pull в режиме подробной SSH?

Если я запускаю "git push" с переменной среды GIT_TRACE = 2, я получаю следующее:

09:25:28.098743 git.c:349               trace: built-in: git 'push' 'origin' 'master'
09:25:28.100261 run-command.c:341       trace: run_command: 'ssh' '[email protected]' 'git-receive-pack '\''kevinburke/letter.git'\'''

Это замечательно, но иногда я получаю эту ошибку:

fatal: Could not read from remote repository.

Я получаю это только периодически, поэтому я не уверен, что происходит. Я знаю, что ssh имеет подробный режим:

 -v      Verbose mode. Causes ssh to print debugging messages about its progress. 
         This is helpful in debugging connection, authentication, and configuration
         problems.  Multiple -v options increase the verbosity.  The maximum is 3.

Было бы здорово, если бы я смог запустить git для запуска этой команды ssh с включенным -vvv. Есть ли способ включить это с помощью переменных среды или с настройками конфигурации?

4b9b3361

Ответ 1

Поместите это в ваш файл ~/.ssh/config:

Host <git-server-FQDN> LogLevel (QUIET|FATAL|ERROR|INFO|VERBOSE|DEBUG|DEBUG1|DEBUG2|DEBUG3)

Последующие команды git, которые взаимодействуют с сервером, должны выдавать требуемый вывод отладки.

Ответ 2

Из Git версии 2.3.0 вы можете использовать переменную окружения GIT_SSH_COMMAND и передать аргумент -v verbose следующим образом:

GIT_SSH_COMMAND="ssh -v" git clone example

Из Git версии 2.10.0 вы даже можете настроить это для каждого репо или глобально:

git config core.sshCommand "ssh -v"
git pull
git push