Показаны сообщения с ярлыком git init. Показать все сообщения
Показаны сообщения с ярлыком git init. Показать все сообщения

четверг, 19 февраля 2015 г.

Git на сервере - Установка Git на сервер под Windows (часть 1)

В этой части я сделаю очень краткое описание самой простой установки репозитория Git на сервере для совместной работы.

Вообще это будет сделано на машине под Windows 7, и сервер и клиент будут работать на одной машине, но вообще разницы нет. Так как в самом простом варианте Git сервер можно просто создать как общую (расшаренную – share) папку в Windows, к которой дать доступ на запись. Собственно права на чтение и запись так же можно настроить средствами Windows.

Но мы рассмотрим самый простой вариант.

Чтобы чуть больше понимать данную тему можно почитать тут про протоколы и тут про настройки, но там все про линух.

Хотя в самом просто варианте установки на файловом сервере это разница почти значения не имеет.

И так! Понеслась!

По умолчанию ну и по правилам каталоги Git для совместной работы должны находится в папках <имя>.git, например:

project.git

Чтобы папка заработала как каталог для совместной работы с репозиторием Git с правами на запись ее можно создать командой:

$ git init --bare --share sharedproject.git

S0001

Все! На этом серверная установка репозитория Git для совместной работы закончена. Остается только расшарить папку sharedpriject.git и раздать права на нее. Но мы это пока делать не будем, а будем подключатся к этой папке локально.

Как видно из скрина в каталоге H:\Git была создана папка sharedproject.git, в которой создана структура для хранения коммитов.

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

Для этого дадим уже известную нам команду git clone

$ git clone /h/Git/sharedproject.git

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

S0003

Все мы клонировали пустой репозиторий (что не удивительно) себе в папку sharedproject. Назавание папки для локальной работы мы могли сделать и другое, но оставили по умолчанию.

Теперь переходим в локальный каталог, создаем там файлик test.txt и смотрим статус:

S0004

Ну и делаем наш первый коммит в локальный каталог:

S0005

Теперь сделаем Push на наш маленький сервер

S0006

Ну вот мы и выполнили первую команду Push. Теперь наш коммит был залит на серевер. Что мы и можем посмотреть:

S0007

То есть мы перешли в каталог совместной работы Git и посмотрели там историю коммитов.

Таким образом настроить совместную работу с Git репозиторием в локальной сети это дело нескольких минут!

Здорово! Не правда ли?!

Более сложные варианты рассмотрим в других статьях.

четверг, 5 февраля 2015 г.

Основы Git - Создание Git-репозитория

Для создания Git-репозитория вы можете использовать два основных подхода. Во-первых, импорт в Git уже существующего проекта или директории. Во-вторых, клонирование существующего репозитория с другого сервера.

1) Создание репозитория в существующей директории

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

$ git init

Эта команда создаёт в текущей директории новую поддиректорию с именем .git, содержащую все необходимые файлы репозитория — основу Git-репозитория. На этом этапе ваш проект ещё не находится под версионным контролем.

Это так же можно сделать и из контекстного меню проводника Windows в каталоге вашего проекта.

Посмотрим на примерах.

Создам в каталоге H:\Git подкаталог TextProject (полный путь H:\Git\TextProject)

И создам там пару текстовых файликов. Да, да, Git может хранить и версии простых текстовых файлов. По существу исходники это те же текстовые файлы.

Git0016

Теперь запускаем Git Bash и переходим в наш каталог командой /h/Git/TextProject

Да это Bash, надо немного привыкнуть к Linux style Улыбка

Git0017

Мы даже можем посмотреть файлики содержащиеся в каталоге командой ls

Git0018

Убедились что мы в нужном каталоге. Даем команду git init

Git0019

Все, подкаталог .git создан в каталоге TextProject

Git0020

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

Git0021

И получаем в результате то же самое – создается скрытый каталог .git

Но хочу напомнить что файлы в этом каталоге еще не находятся под версионным контролем.

Если вы хотите добавить под версионный контроль существующие файлы (в отличие от пустого каталога), вам стоит проиндексировать эти файлы и осуществить первый коммит изменений. Добиться этого вы сможете запустив команду git add несколько раз (или использовать маску), указав индексируемые файлы, а затем выполнив git commit:

Git0022

Мы разберем, что делают эти команды чуть позже. Теперь у вас есть Git-репозиторий с отслеживаемыми файлами и начальным коммитом.

2) Клонирование существующего репозитория

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

Git получает копию практически всех данных, которые есть на сервере. При выполнении git clone с сервера зибирается (pulled) каждая версия каждого файла из истории проекта. Фактически, если серверный диск выйдет из строя, вы можете использовать любой из клонов на любом из клиентов, для того, чтобы вернуть сервер в то состояние, в котором он находился в момент клонирования.

Для этого создадим репозиторий на GitHub. Как регистрироваться на GitHub я тут объяснять не буду, это просто.

Git0023

Git0024

Git0025

На README мы нажали для того чтобы создать в проекте хоть один файлик.

Git0026

В результате имеем

Git0027

Теперь клонируем этот проект к себе на диск в каталог H:\Git\

Для этого переходим в каталог H:\Git и даем команду

git clone https://github.com/n0tb0dy/TextProject2.git

Git0028

В результате у нас в каталоге H:\Git создался каталог TextProject2 с подкаталогом .git и файлом README.md

Git0029

Так же можно склонировать проект в каталог с названием отличающимся от названия каталого проекта на сервере, для этого достаточно в командной строке указать каталог куда хотим склонировать проект

Git0030

В данном случае мы склонировали проект TextProject2 в каталогк TxT2 каталого H:\Git

Таким образом мы получили две копии одного проекта в разные каталоги

Git0031

Вот мы и научились создавать Git репозитории и делать в них первые коммиты.