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

Как запустить сервер Git в Windows?

Как я могу предоставить репозиторий Git в Windows? "Правильные" способы - запустить "git -daemon" (unix specific) или запустить ssh (unix specific) или запустить переднюю часть http для Git. Если у меня просто два окна Windows и не хочется устанавливать Unix только для запуска Git, каков оптимальный способ обмена репозиториями между двумя блоками?

4b9b3361

Ответ 1

Если обе машины находятся в одной и той же локальной сети, вы можете поместить репо в папку, совместно используемую обычным сетевым протоколом Windows (SMB).

(Отказ от ответственности: я не уверен в возможности блокировки семантики для SMB, поэтому может быть, что одновременная запись в репо может привести к ее повреждению, а также, вероятно, для Unix).

Ответ 2

Если вам нужен самый простой способ, вы должны увидеть SCM-manager

Самый простой способ поделиться и управлять своими Git, Mercurial и Subversion репозитории по http.

Чтобы иметь http-сервисный репозиторий с приятным веб-интерфейс и управление, которое вы должны иметь только Java (Java, а не JRE)

Ответ 3

Другой вариант вместо запуска виртуальной машины - запустить весь материал Unix в Cygwin. С помощью Cygwin вы можете настроить ssh-сервер на вашей машине Windows, а также на гитолит. И он запускается изначально на вашем оборудовании, а не на виртуальной машине.

Установка Cygwin очень проста. Это всего лишь один исполняемый файл, который загружает нужные вам пакеты. Держите установщика вокруг, потому что это то, что вы будете использовать для добавления и удаления программного обеспечения в Cygwin.

Запуск гитолита на Cygwin не так прост, но просто google "cygwin gitolilte", и вы найдете много учебников.

Ответ 4

Git - это система управления распределенной версией. Таким образом, в большинстве случаев вам не нужна специальная программа для обслуживания содержимого в репозитории, вам просто нужен способ доступа к репозиторию с обеих компьютеров. Один из способов сделать это похож на @thomas, предлагая и помещая клон репозитория в общую сетевую папку.

Другим способом, который я нашел успешным в прошлом в качестве сломанного аспиранта, является использование Dropbox в качестве "основного" репозитория. В принципе, вы git клонируете свой репозиторий в свой каталог Dropbox, тогда вы можете настроить git на обеих машинах, чтобы нажать/вытащить из репозитория Dropbox. Dropbox сделает синхронизацию в фоновом режиме. Это работает только для слабоактивных репозиториев.

Ответ 5

То, что я делал в прошлом, - это просто запустить виртуальную машину с небольшим клиентом linux на одной машине через виртуальную коробку. Вам нужно только перенаправить порт ssh, и вам хорошо идти - нет необходимости в настройке сети на что-то сложное на виртуальной машине.

Это позволит вам запускать такие вещи, как gitolite для управления пользователями.

По этой и многим другим причинам я переключился на запуск Linux для всех своих компьютеров и просто запустил окна в виртуальной машине, когда мне нужно сделать Windows. Множество отличных сервисов, которые вы можете запускать в Linux, легче подключить к гостевой ОС, чем наоборот.

Если у вас будут только две машины Windows, вы можете добавить URL-адрес на удаленный компьютер, но убедитесь, что это делается через протокол файлов. то есть:

 git remote add origin file:///\\some-server/share/repo.git

Некоторые утверждают, что если вы используете только путь, git попытается сделать жесткие ссылки между двумя репозиториями. AFAIK, msysgit этого не делает, и вы можете использовать путь без файлового протокола:

 git remote add origin /z/somepath/repo.git

если z отображается на общий ресурс на другом компьютере. Мне не нужно было запускать сервер в вашем сценарии.