Как настроить и клонировать удаленный репозиторий git в Windows?

Кто-нибудь знает, как проверить, клонировать или извлекать проект или код из удаленного хранилища git на сервере Windows?

IP-адрес репозитория: xxx.xx.xxx.xx, каталог исходного файла c:\git\git.git\xxx\file.exp

Я использую интерфейс командной строки с терминала SUSE Linux. Я пробовал такой же метод, но всегда отвечает, что репозиторий не существует.

Может ли кто-нибудь сказать мне, как настроить и клонировать?

Ответ 1

Вам нужно настроить какой-то общий доступ с Windows-машины, с которым вы можете получить доступ с помощью git. Git поддерживает 3 метода доступа: ssh, удаленная файловая система или http. Последний, вероятно, самый сложный, поэтому я не буду его подробно останавливать. Первые два:

  • Настройте ssh-сервер на windows.

    Вы можете попробовать следующее руководство: http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on-windows/. См. Также этот вопрос для некоторых дополнительных опций.

    Чем вы клонируете git clone [email protected]:/c/git/path/to/repo (вам будет предложено ввести пароль).

    Преимущество этого метода в том, что он защищен (соединение зашифровано и ssh-сервер заслуживает доверия), поэтому вы можете использовать его через Интернет. Так как сервер Git работает на машине Windows во время доступа, вы можете настроить перехватчики для расширенной политики безопасности, контролируя другие процессы и т.д.

  • Поделитесь репозиторием с помощью совместного использования Windows.

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

    Чем вы клонируете git clone /share/mountpoint/path/to/repo.

    Возможно, это проще настроить, но оно не очень безопасно, поэтому его нельзя использовать вне локальной сети. Также в этом случае крючки на машине Windows не будут выполняться (на самом деле Git попытается выполнить их на машине Linux, но они либо не будут работать там, либо могут быть обойдены в любом случае), поэтому вы не можете применяйте расширенную безопасность.

Определенный файл не имеет значения, вам нужно указать путь к каталогу, содержащему подкаталог .git, или к каталогу, который является открытым репозиторием (path/to/repo выше).