Создать Git-репозиторий

Для получения Git-репозитория вы можете использовать два основных способа.

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

Создать локальный репозиторий и поместить проект в него

  1. В панели Навигатор выделите те проекты, которые вы хотите поместить в локальный репозиторий. Например, проект конфигурации и проект расширения;
  2. Нажмите Групповая разработка > Общий проект... в контекстном меню;
  3. Нажмите Создать и выберите каталог на вашем компьютере, в котором будет располагаться репозиторий. После этого нажмите Готово;
    Предупреждение: Когда вы создаете локальный репозиторий, создавайте его таким образом, чтобы каталог репозитория и рабочая область 1C:EDT не находились в иерархии друг друга. Подробнее об этом читайте здесь.
  4. Через некоторое время проект будет помещен в репозиторий. О том, что проект связан с репозиторием, вы узнаете в панели Навигатор. Рядом с именем проекта в квадратных скобках появится имя репозитория (имя каталога, который вы выбрали) и имя ветки, которая находится в вашем рабочем каталоге. В данном случае это будет ветка master;

    Угловая кавычка перед именем проекта означает, что в рабочем каталоге есть изменения, которые не зафиксированы в репозитории.

    Если вы посмотрите на файловую систему, то увидите, что 1C:EDT создала в указанном вами каталоге папку с именем .git, содержащую все необходимые файлы репозитория - основу Git-репозитория. Также вы увидите здесь рабочий каталог вашего проекта.

  5. Если вы хотите добавить под версионный контроль существующие файлы (в отличие от пустого каталога), вам стоит добавить их в индекс и зафиксировать изменения в первый раз. Для этого в контекстном меню проекта нажмите Групповая разработка > Коммит...;
  6. В результате этой команды с правой стороны откроется новая панель Индексирование Git. С ее помощью вы сможете выполнить все необходимые действия.
    В верхнем поле Неиндексированные изменения перечислены все файлы проекта, которые еще не находятся под версионным контролем, то есть новые файлы;
  7. Нажмите (Добавить все файлы в индекс) в командной панели. Через некоторое время 1C:EDT перенесет все файлы в поле Индексированные изменения;
  8. Напишите сообщение коммита, которое для вас и для других разработчиков поясняет выполненные изменения. Нажмите Фиксировать;
  9. Через некоторое время панель Индексирование Git очистится, а в панели Навигатор в заголовке проекта вы увидите следующие изменения:

    Угловая кавычка перед именем проекта исчезла. Это говорит о том, что все изменения рабочего каталога зафиксированы.

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

Клонировать удаленный репозиторий

Для получения копии существующего Git-репозитория (например, проекта, в разработке которого вы хотите участвовать) необходимо его клонировать. Если вы знакомы с другими системами контроля версий, такими как Subversion, то заметите, что команда называется (Клонировать репозиторий Git) (Clone), а не Извлечь (Checkout) или Обновить конфигурацию из хранилища (если говорить про хранилище конфигурации «1С:Предприятия»). Это важное различие.

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

Клонировать репозиторий и сразу же импортировать его проект в рабочую область можно в панели Навигатор. Если у вас нет еще ни одного проекта, нажмите ссылку в центре панели — Импортировать проект(ы) из репозитория Git. Если панель уже занята проектами, нажмите Импорт... > Git > Проекты из Git.

Выберите Клонировать URI и нажмите Далее.

В поле URI укажите адрес репозитория, который вы хотите клонировать. Укажите пользователя и пароль для доступа к удаленному репозиторию. Установите флажок Сохранить в защищенном хранилище, чтобы 1C:EDT могла в дальнейшем автоматически использовать эти данные для аутентификации. Нажмите Далее.

Вы увидите ветки, которые есть в этом репозитории. Если вы точно знаете, какие ветки вам нужны, выберите их. В противном случае отметьте все ветки и нажмите Далее.

В вашем примере в репозитории есть единственная ветка master.

Выберите локальную папку на вашем компьютере, в которой будет располагаться клон исходного репозитория и нажмите Далее;
Предупреждение: Когда вы создаете локальный репозиторий, создавайте его таким образом, чтобы каталог репозитория и рабочая область 1C:EDT не находились в иерархии друг друга. Подробнее об этом читайте здесь.

Убедитесь, что выбран вариант Импорт из существующего проекта Elipse и нажмите Далее.

1C:EDT покажет вам проекты, находящиеся в удаленном репозитории. Отметьте их все, если их несколько, и нажмите Готово.

В результате в вашей локальной папке будет создана папка .git и папка с именем исходного репозитория (coldev в вашем случае). Будут скачаны все данные для этого репозитория и будет извлечена рабочая копия последней версии.

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

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

По материалам книги Pro Git (авторы Scott Chacon и Ben Straub, издательство Apress). Книга распространяется по лицензии Creative Commons Attribution Non Commercial Share Alike 3.0 license.