Сервер git для windows

gosha20777

Собственный Git на Windows

January 05, 2018 | 3 Minute Read

Н у вот наступил 11111100010 год ии у меня появилось свободная минутка, чтобы написать тут что-то полезное:-)

Случилось так, что понадобился приватный git репозиторий, а покупать VIP аккаунт на github не хотелось, да и политика безопасности компании, для которой разрабатывается проект, не позволяет это делать. По этому было принято решение о развертывании собственного git-сервера. Так как я C# developer, то речь пойдет конечно же о Windows Server и IIS Server. Пользователям Linux скажу, что там установка этого «богатства» еще проще и состоит из пары команд в терминале.

Немного о платформе.

Данный git-server был написан на C# на ASP.NET и представляет собой Web приложение. Все исходные коды доступны тут. Все желающие могут ознакомиться и оценить кривизну кода) А мы поехали дальше -)

Как его ставить?

Для успешной установки нам нужны

  1. Сам сервер на Windows Server 2008 R2/2012/2012 R2/2016 (кто-то сидит на ней?)
  2. Internet Information Services (IIS) 7 или 8
  3. .NET Framework 4.6
  4. visual redist 2012/2015 и CLR
  5. Server дистрибутив

Быстро пробежимся по основным пунктам. У меня стоит Windows Server 2012 R2. И показывать я буду на ней. Для Windows Server 2008 все примерно также. Предполагается, что Виндасервер у вас сконфигурирован и настроен. Если это не так – идите к документации)

IIS Сервер + .NET Framework.

Запускаем Server Manager (диспетчер серверов) -> Manage (Управление) -> Add Roles and Features (Добавить роли и компоненты) …

да да у меня виндосервер на русском.

Выбрать Role-based or Feature-based Installation (установка ролей или компонентов)

Далее выбираем наш сервер

.

В ролях выбираем Web Server (IIS).

.

В компонентах жмякаем на .NET framework 4.5 и на последнем шаге выбираем нужные настройки.

Установка… Потребует перезагрузки сервера. Загружаем .NET Framework 4.6 и ставим его. Все теперь можно ребутиться.

Для любителей консоли…

Git Server

Всё, теперь можно перейти к непосредственно развёртыванию git сервера. Разархивируем содержимое дистрибутива в wwwroot IIS-сервера ( C:\inetpub\wwwroot ) и даём права учетной записи IIS_IUSERS на модификацию каталога App_Data .

.

Запускаем IIS Manager и конвертируем Git в приложение.

.

После конвертации жмем ActionBrowse (Управление приложением – обзор) и у нас должен открыться сайтик с формой для входа. Теперь он доступен по адресу IP сервера\git в локальной сети. При желании его можно вывезти во внешнюю сеть и вообще делать с ним все что душе угодно!

Настройка.

По стандарту логин пароль для входа admin\admin.

.

В настройках можно указать другой путь для хранения файлов, изменить язык и вообще сделать много полезного)

Можно добавлять новых пользователей и осуществлять контроль видимости репозиториев, выдавать исключительные права пользователям. Также можно объединять пользователей в команды и управлять ими. На пример команде Core Developers будут доступны все ветки в репозитории, а команде Testers только ветка Master.

Читайте также:  Как понизить uac windows 10

Я надеюсь данная статья была полезна для вас. Ставьте Like за встроенный редактор кода и подсветку синтаксиса))) Приятного кодинга!

Pro Git

Страницы

воскресенье, 1 марта 2015 г.

Установка и настройка сервера Git на Windows Server (20xx)

Тут я, вкратце, опишу один из возможных вариантов установки сервера Git под Windows Server. Хотя эти рекомендации так же можно применить и для установки сервера Git на обычную рабочую станцию под Windows от XP и выше.

И так скачиваем дистриб от сель. Кстати там же можете почитать и процедуру установки, там все более просто без заморочек на безопасность и обновления Git под винду до текущей версии.

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

И так скачали. Понеслась установка.

Рекомендую поставить Git в комплекте который идет с инсталлятором, тем более если у вас нет установленного на сервере. Если есть, и если прописаны правильно пути к нему, то заработает и без установки из дистриба.

Ну и все устанавливается. У меня на сервере уже стоит Apache, поэтому его надо было потушить, так как этот Git сервер по умолчанию запускается на портах 80 и 443, но это можно поменять.

И так тушим Apache.

И запускаем GitStack сразу по окончании установки. Просто оставляем галку включённой.

Запустится ваш браузер по умолчанию и выведет вас сразу на страничку сервера

Логинимся с учеткой по умочанию

Сразу же меняем пароль администратора

GitStack по умолчанию запускается под системной учетной записью, что не есть гуд для веб сервиса. Поэтом меняем это дело, на локальную учетку.

И перезапускаем сервис. Идем опять в админку сервера и меняем порты на которых он будет висеть.

Так как у меня сервер находится за файрволом, то я оставил оба и HTTP и HTTPS, развесил их на порты на которых у меня не слушает Apache. Вы можете поставить какие вашей душеньке угодно.

После смены портов естественно в адресной строке надо будет указывать уже порт, чтобы дальше рулить админкой. Рестартуем GitStack

Ну и я стартовал свой Apache. У вас этого может и не быть. То есть по ходу у меня запущено два веб сервера.

Заходим по новому порту и донастраиваем чтобы слушал еще и по HTTPS.

Проверяем работу HTTPS

Все теперь можно высовывать морду сервера наружу в большой мир. Но осторожно ….

И чтобы большой мир увидел эту морду надо открыть порт на локальном файрволе сервера, так как по умолчанию GitStack открывает порт 80

Все, теперь уже можно заходить на сервак удаленно через доменное имя, ну или его внешний IP.

Далее создаем пользователя

И даем пользователю права на репозиторий

И еще немного настроек безопасности. Если зайти на сервер без указания папки GitStack то увидим такое

Читайте также:  Что такое windows event logs

Это не есть гуд. Правим указанный файлик настроек

Рестартуем вебсервис GitStack и видим уже такую картину.

Теперь клонируем репозиторий с нашего сервера на локальную машину

Настраиваем локально Git и делаем первый локальный коммит

И далее заливаем его на сервер. Но делаем это по особенному, так как у нас на сервере само подписанный сертификат.

У сервера достаточно приятная и понятная морда для отслеживания коммитов через веб интерфейс

Ну и на последок надо заметить что на момент написания статьи в комплекте с GitStack шла не самая последняя версия Git

Я установил последнюю версию Git, переписал пути в переменной PATH и все заработало на новой версии

Ну и на последок можно сказать что можно вписать в конфиг проекта строку

$ git config —local http.sslVerify false

Чтобы каждый раз не писать в командах отмену проверки валидности сертификата.

Установка Git в Windows

Система контроля версий Git полезна не только для программистов но и для системных администраторов. Рассмотрим процесс установки программного обеспечения, а также настройки подключения к репозиторию GitHub, на сервере под управлением ОС Windows.

Git — одна из популярных современных систем контроля версий. В основном используется разработчиками программного обеспечения с целью отслеживания изменений в программных продуктах в ходе их разработки. Изначально Git создали для помощи в разработке ядра Linux, однако из-за своих преимуществ, проект ушел в массы.

Приступаем к установке.

Открываем официальный сайт проекта, кликаем по 64-битной версии для Windows.

.

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

Программа установки приветствует нас лицензионным соглашением. Кликаем по кнопке “Next”.

На следующем шаге указываем путь установки. Нас устраивает указанный по умолчанию. Кликаем “Next”.

На этапе выбора компонентов, отметим галочкой создание ярлыка Git на рабочем столе и переходим к следующему этапу.

Теперь программа установки предлагает создать ярлык в меню Пуск. Если в этом не видите необходимости, установите соответствующую галку. Кликаем по кнопке “Next”.

На следующем этапе, установщик предложит выбрать редактор для git по умолчанию. Для новичков лучше использовать nano, для тех, кто любит посложнее — Vim. Хотя допускается использование Notepad++ и прочего. Переходим к следующему шагу.

Теперь программа установщик спрашивает как Вы собираетесь использовать командную строку:

  • Use Git from Git Bash only — использование только из командной строки Bash.
  • Use Git from the Windows Command Prompt — использование командной строки Bash, а также минимальный набор команд Git из командной строки Windows.
  • Use Git and optional Unix tools from the Windows Command Prompt — использование Git и утилит Unix из командной строки Windows. При выборе этой опции будут перезаписаны некоторые утилиты ОС Windows, например find и sort.

Оставляем первый вариант и двигаемся дальше.

Теперь установщик спрашивает о том, какую библиотеку следует использовать для HTTPS-соединений. Оставляем openssl и переходим к следующему шагу.

Следующий шаг можно назвать самым значимым. Вопрос программы установки в том, какой формат завершения строки использовать. Одной из отличительных особенностей Windows от Unix-подобных систем — символ перехода на новую строку в файлах, а именно, LF и CRLF — управляющие символ для переноса строки в Unix и Windows соответственно.

Читайте также:  Linux vlc аппаратное ускорение

Мы рекомендуем выбрать параметр предложенный системой — отладка файла в формате Windows, а загрузка файла — в Unix-формате. Кликаем по кнопке “Далее”.

На данном этапе, программа запросит каким терминалом пользоваться далее:

  • MinTTY — терминал Unix;
  • Windows — стандартный терминал (командная строка) Windows.

В нашем случае оставляем “как есть” и двигаемся дальше.

На следующем шаге, установщик попросит отметить необходимые функции:

  • File system caching — кэширование файловой системой.
  • Git Credential Manager — включить менеджер учетных данных.
  • Symbolic links — разрешить использование символьных ссылок.

Выбираем то, что необходимо и переходим к следующему шагу.

На данном шаге, программа установки предлагает использовать экспериментальную опцию. Использовать ее или нет — решать Вам. Кликаем по кнопке “Install”.

Программа приступает к копированию файлов. Дожидаемся окончания процесса.

По окончании процесса установки нажимаем “Finish”.

Подключаемся к репозиторию.

Предполагается, что у вас уже есть своя учетная запись на github/gitlab. Если нет, то, в случае с github, проходим несложный процесс регистрации на сайте. Затем авторизуемся на нем и создаем репозиторий. Для этого кликаем по кнопке “Start a project”.

Указываем имя репозитория и кликаем по кнопке “Create repository”.

Предположим, что у нас есть файл, который необходимо добавить в репозиторий git или gitlab. Открываем папку, где располагается файл, кликаем правой кнопкой мыши по свободному месту и из открывшегося контекстного меню выбираем “Git Bash Here”.

Откроется командная строка. Последовательно выполняем следующие команды:

git config —global user.email «youmail@example.com»

git config —global user.name «Ваше имя»

Таким образом мы указали нашу почту и имя.

Для того, чтобы начать отслеживать изменения в текущей папке, выполняем следующие команды:

Выполняем свой первый коммит и добавляем изменения на сервер:

git commit -m «Init»

Важно. Чтобы внести изменения на сервер, следует использовать для github:

git remote add origin https://github.com/пользователь/название_репозитория.git

git push -u origin master

git remote add gitlab https://server/namespace/project.git

git push -u gitlab master

После запуска команды, откроется окно авторизации. Вводим данные, которые использовали при регистрации.

Настройка аутентификации по SSH-ключам.

Для начала создадим ключ:

В ходе генерации ключа, программа запросит ввод парольной фразы, которая необходима для защиты самого ключа. Можно ответить на вопрос двойным нажатием на Enter.

Закрытый ключ будет находиться по пути C:Users .sshid_rsa. Открытый ключ — C:Users .sshid_rsa.pub

eval $(ssh-agent -s)

Добавляем ключи к ssh-агенту:

Добавляем созданный ключ на сервер Git. На сайте github, в верхнем правом углу, кликаем по иконке учетной записи, выбираем “Setting”.

На обновленной странице, в левом меню, выбираем “SSH and PGP keys”, а в основной части окна, напротив SSH keys, кликаем по кнопке “New SSH key”.

Заполняем поле Title. В поле Key вставляем содержимое файла C:Users .sshid_rsa.pub

Кликаем по кнопке “Add SSH key”.

Если все выполнено правильно, появится примерно такая запись:

Для проверки настроек, выполняем команду:

В ходе выполнения команды, программа запросит: “Уверены ли вы в продолжении соединения”. Это стандартный вопрос безопасности. Отвечаем — yes.

Если все выполнено правильно, программа выведет приветственную речь.

Оцените статью