Как настроить и клонировать удаленное GIT-репо в Windows? - PullRequest
19 голосов
/ 16 февраля 2012

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

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

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

fatal: ''/repo/project.git'' does not appear to be a git repository
fatal: Could not read from remote repository..
Please make sure you have the correct access rights

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

Ответы [ 2 ]

11 голосов
/ 16 февраля 2012

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

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

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

    Чем вы клонируете по git clone username@xxx.xx.xxx.xx:/c/git/path/to/repo (вас попросят ввести пароль).

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

  2. Предоставить общий доступ к хранилищу с помощью общего доступа к Windows.

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

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

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

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

0 голосов
/ 02 апреля 2018

Прежде всего, репозиторий git - это просто набор файлов, к которым вам нужен доступ. Вы писали о клонировании и загрузке репозитория, и это простая часть - вам просто нужно получить доступ к файлам (и иметь права на чтение).

Это может быть сделано прямым доступом к файловой системе, протоколом http (s) или ssh-соединением. На самом деле, есть даже способ сделать это на FTP-сервере.

Что вы можете сделать:

1) установить сервер ssh, затем получить доступ к файлам git через сервер ssh - фактически, путь, который вы должны использовать, зависит от сервера ssh, который вы используете в windows: source

2) настроить веб-сервер для доступа к файлу: git clone http://host/path/to/repo

3) смонтировать файловую систему из windows на вашем Linux-компьютере и клонировать репозиторий: git clone /mnt/filesystem/path/to/repo

Несмотря на выбранный вами метод, я советую обратиться к соответствующей главе Pro Git Book

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