Git вытащить хранилище на локальный компьютер с удаленного компьютера - PullRequest
2 голосов
/ 10 мая 2019

Я настроил ssh-соединение на компьютере B и правильно подключаюсь через ssh.Я хочу выполнить команду git pull, чтобы она вытащила репозиторий на компьютер А вместо В. Это слишком хлопотно или, может быть, есть альтернатива?

Мне нужно скопировать все, что угодно git pull подключил компьютер B к моему компьютеру A. Единственное, что у меня есть, это просто ssh-соединение между ними, и репозиторий доступен только с компьютера B.

Ответы [ 4 ]

3 голосов
/ 10 мая 2019

Если я правильно понимаю, вы хотите использовать Git через туннель SSH, чтобы компьютер A мог получить доступ к хранилищу REPO.git на компьютере C через компьютер B

  1. На компьютере A откройте туннель SSH:

    ssh -L3333: compC: 22 compB

  2. Со второй консоли на компьютере A:

    git clone ssh: // git @ localhost: 3333 / REPO.git

1 голос
/ 10 мая 2019

Возможно запускать git команды через двойной туннель SSH .Принятый ответ там немного устарел, ssh в настоящее время может построить туннель без внешних команд, таких как netcat или socat.

Настроить в ~/.ssh/config:

Host server
   HostName git-server
   ProxyCommand ssh -W %h:%p B

Это настраивает ssh для запуска соединения с хостом B и открывает туннель через это соединение с хостом git-server.Выполнить

git pull ssh://server/path/to/repository

Другое возможное решение - использовать ext:: удаленный помощник .Смотрите второй ответ в связанном вопросе.Выполнить

git pull "ext::ssh -t B ssh git-server %S '/path/to/repository'"
1 голос
/ 10 мая 2019

Другое решение (и, на мой взгляд, самое простое) заключается в следующем:

  • Подключение к удаленному компьютеру через SSH
  • Передача удаленных изменений в GITфилиал
  • Вытащить изменения из удаленной ветви с локального компьютера
1 голос
/ 10 мая 2019

Я не уверен, что он ответит на ваш вопрос, но если это только для вытягивания, вы можете использовать команду scp после нажатия на B:

scp <source> <destination>

Он будет копироваться как команда cp, но через ваше соединение ssh.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...