Как настроить GIT с открытым HTTP-репозиторием на IIS-машине
Сервер уже запускает IIS для обслуживания портов 80 и 443 через TCP. Я хочу сделать централизованный репозиторий GIT "push / pull" доступным для всех членов моей команды через Интернет.
Поэтому я должен использовать HTTP или HTTPS.
Но я не могу использовать Apache, потому что IIS уже подключает прослушивающие сокеты на 80 и 443 портах! Есть ли способ опубликовать GIT-репозиторий поверх IIS? Использует ли GIT анализ ультимы WebDAV?
Обновить. Кажется, что установка git HTTP только для чтения. Это печально. Я намеревался сохранить стабильную ветвь на сервере сборки и повторно развернуть ее с помощью ловушки при нажатии. Кто-нибудь видит обходной путь помимо использования SVN для этой ветви?
7 ответов
Bonobo Git Server
GitAspx - Джереми Скиннер
http://github.com/Jeremy Skinner/git-dot-aspx/
http://github.com/Jeremy Skinner/git-dot-aspx/downloads
Инструкция по установке
http://www.jeremyskinner.co.uk/2010/10/19/gitaspx-0-3-available/
Git Web
WebGitNET
https://github.com/otac0n/WebGitNet
В качестве альтернативы... (не IIS, но настоятельно рекомендуется, бесплатно и с открытым исходным кодом)
Гитея (развилка Гогов): https://gitea.io/
Gogs: https://gogs.io/
Диспетчер SCM позволяет легко настроить конечные точки контроля версий для Git, Hg и SVN в одном и том же процессе хостинга. HTTP/HTTPS поддерживается наряду со встроенной аутентификацией пользователя.
http://www.scm-manager.org/
https://bitbucket.org/sdorra/scm-manager/
Git предположительно поддерживает webdav и должен работать с любым сервером webdav. Тем не менее, это действительно медленно по сравнению с нативными протоколами git.
http://www.kernel.org/pub/software/scm/git/docs/howto/setup-git-server-over-http.txt
Сегодня Git не так уж плох в Windows.
И если вы хотите использовать SVN на порту 443 и / или 80, когда IIS уже использует его, попробуйте инструмент по адресу http://gstoolkit.codeplex.com/wikipage?title=SvnReverseProxy&ProjectName=gstoolkit который является обратным прокси-сервером, который позволяет IIS прозрачно передать через SVN на внутренний сервер VisualSVN (работающий на той же машине через порт 8080).
Я все еще пытаюсь заставить работать WebDAV и Git на Windows. (либо через Apache, либо через IIS WebDAV).
Можно запустить Git Smart HTTP- сервер (поддерживающий как push, так и pull от удаленных клиентов по HTTP) в Windows без каких-либо дополнительных зависимостей, кроме IIS и Git.
Когда вы устанавливаете Git, он включает исполняемый файл с именемgit-http-backend.exe
который реализует протокол Smart HTTP, предназначенный для работы через CGI на любом веб-сервере.
Вы можете защитить сервер Git, используя базовую аутентификацию HTTP и HTTPS. Вы можете использовать учетные записи Windows и права доступа к файлам/папкам для управления правами доступа к отдельным репозиториям.
Полные подробные инструкции находятся здесь: Как запустить сервер Git в Windows с помощью IIS.
Есть способ настроить Git с MSysGit без Cygwin. http://java2cs2.blogspot.com/2010/03/setup-git-server-on-windows-machine.html
Попробуйте эту инструкцию, которая использует SCM-Manager и IIS: размещение Git, SVN и Hg (Mercurial) в Windows с IIS.
https://github.com/projectkudu/kudu - это механизм развертывания в Azure. Это может помочь любому, кто еще задает этот вопрос...