Git — распределённая система контроля версий, которая даёт возможность разработчикам отслеживать изменения в файлах и работать совместно с другими разработчиками. Git выполняет все операции локально, что увеличивает его скорость. Кроме того, он локально сохраняет весь репозиторий в небольшой файл без потери качества данных.
GitLab — веб-приложение и система управления репозиториями программного кода для Git. Обычно GitLab используется вместе с Git и даёт разработчикам возможность сохранять их код онлайн, а затем взаимодействовать с другими разработчиками в разных проектах.
Перед началом работы с GitLab установите себе на устройство приложение Git по ссылке.
Найти подробную инструкцию по установке Git можно здесь.
Авторизуйтесь в сервисе GitLab через корпоративную почту @miem.hse.ru.
Затем выберите в верхней панели раздел "Groups". Щелкните на "Your Groups". На этой странице должна находиться группа с номером и названием вашего проекта. Нажмите на нее, чтобы открыть.
Если после авторизации вы не видите группу своего проекта, то обратитесь в Техподдержку.
После авторизации нужно установить пароль для вашего аккаунта в GitLab.
Нажмите на вашу иконку в правом верхнем углу и перейдите в раздел "Настройки" (settings).
Затем перейдите во вкладку "Пароль" (password).
Репозиторий (хранилище) — место, где хранятся и поддерживаются данные. Чаще всего данные в репозитории хранятся в виде файлов.
В GitLab используются проекты — структура, включающая в себя репозиторий Git, настройки, обсуждения и другие сопутствующие инструменты.
Узнать более подробную информацию можно перейдя по ссылке: что такое репозиторий?
Шаг 1. Зайдите в свой аккаунт на GitLab и нажмите на иконку "Groups" в верхней панели.
Шаг 2. Затем перейдите во вкладку "Your group".
Шаг 3. Выберите команду с названием вашего учебного проекта.
Если вы не видите в разделе "Your group" команду вашего проекта, то обратитесь в Техподдержку.
Шаг 4. Вы перешли на страницу своей команды. Теперь нужно создать репозиторий. Для этого нажмите на кнопку "New project".
Если у вас уже есть нужный вам репозиторий, то перейдите к шагу 6.
Шаг 5. Напишите название вашего репозитория и добавьте нужные данные. Готово!
Рекомендуем установить галочку напротив "Инициализировать репозиторий файлом README" - в репозитории появится документ "README. md", в котором можно описывать файлы, содержащиеся в этом репозитории.
Если вы хотите залить сюда файлы из уже существующего репозитория, то можеть не создавать новый "README. md".
Шаг 6.
Переместить проект может человек только с ролью "Maintainer"(подробнее в разделе участники и роли)
Если проект был создан на другой платформе (Github, Bitbucket и т.д.), то при создании нового репозитория откройте вверху вкладку "Import project" вместо "Blank project", а затем выберите " Repo by URL".
Нужно обязательно выбрать "Repo by URL", в остальных случаях импорт не всегда проходит успешно
Подробнее о миграции проектов.
При этом вся информация по коммитам будет перенесена. Однако, чтобы она корректно отображалась и учитывалась в статистике, необходимо, чтобы коммиты были сделаны с почты @miem.hse.ru. Если коммиты были сделаны с другой почты, то необходимо добавить ее адрес в личном кабинете в Git.miem.hse.ru (подробнее в блоке "Коммит")
Откройте нужный репозиторий и нажмите на кнопку "Clone". Скопируйте ссылку.
Далее вам нужно перейти в консоль.
Как это сделать?
Не на всех видах Windows консоль открывается так, как указано выше. НО на всех можно нажать
Win+R
и ввестиcmd
.
Enter
.Alt+Ctrl+F1
.Для получения копии существующего Git-репозитория необходимо ввести в терминале команду git clone
.
То есть мы просим Git создать копию репозитория, который находится по ссылке (<ссылка на репозиторий>), и можем указать путь к директории, в которую Git скопирует репозиторий (<директория>). Если его не указать, директория создастся в каталоге, где вы находитесь, когда выполняете команду и будет называться так же, как и сам репозиторий.
Клонирование репозитория осуществляется командой:
git clone <ссылка на репозиторий> <путь к директории>
После вы должны ввести имя пользователя и пароль от своей учетной записи в GitLab.
Обратите внимание, что имя пользователя - это имя вашей корпоративной почты до символа "@", а пароль - это пароль, который мы ранее установили в GitLab.
Если у вас возникают ошибки авторизации, обязательно проверьте, какой у вас логин: нажмите на крайнюю кнопку справа сверху на главной странице GitLab и посмотрите, что указано под вашей фамилией.
Вы можете в любой момент перейти к папке с вашим репозиторием с помощью команды:
cd путь/к/директории
Следующая команда показывает, что файл "README.md" скачался и лежит в нашей папке:
dir (ls в Unix)
Первое, что вам следует сделать после установки Git — указать ваше имя и адрес электронной почты. Каждый коммит в Git, сделанный вами, будет содержать эти данные. Это информация о разработчике, который вносит изменения.
Используем следующие команды:
git config --global user.name "Иван Иванов"
git config --global user.email ivivanov@miem.hse.ru
Если указана опция --global
, то эти настройки достаточно сделать только один раз, поскольку в этом случае Git будет использовать эти данные для всего, что вы делаете в этой системе. Если для каких-то отдельных проектов вы хотите указать другое имя или электронную почту, можно выполнить эту же команду без параметра --global
в каталоге с нужным проектом.
Если вы хотите проверить используемую конфигурацию, можете использовать команду git config --list
, чтобы показать все настройки, которые Git найдёт:
Одной из важнейших команд является git status
. Система отслеживает изменения, и с помощью этой команды мы узнаем о состоянии системы. Если выполнить эту команду сразу после клонирования, то можно увидить что-то вроде этого:
Это означает, что у вас чистый рабочий каталог. Другими словами, в нем нет отслеживаемых измененных файлов. Git также не обнаружил неотслеживаемых файлов, в противном случае они бы были перечислены здесь.
Если у вас уже есть некоторые файлы, которые нужно перенести в репозиторий, вы можете скопировать их в рабочий каталог.
GitLab предоставляет простой способ внести небольшие изменения в файлы проекта. Это среда разработки, встроенная в сайт GitLab. Чтобы её запустить, найдите файл, который нужно отредактировать и щелкните по его названию. На открывшейся странице вы увидите содержимое файла и две кнопки: Edit
и Web IDE
. Первая кнопка откроет файл для простого редактирования, вторая запустит встроенную среду разработки.
Также на сайте предусмотрена возможность создавать новые файлы. Для этого на странице репозитория нажмите на кнопку "+"
и выберите "New file"
. В открывшемся редакторе введите имя файла и нужное содержимое. Не забудьте нажать на кнопку Commit changes
по завершении редактирования.
Кроме того, для частых типов файлов предусмотрены отдельные кнопки. Вы найдёте их над списком файлов на странице репозитория. Так вы, например, сможете быстро добавить файл README.md
в ваш проект. Просто нажмите на кнопку Add README
.
Чтобы внести изменения в файл, который скопировался вместе с репозиторием, просто перейдите в папку с копией репозитория на компьютере и откройте этот файл. В нашем случае, это файл "README.md". Он должен содержать описание репозитория, отображаемое на его странице на сайте. Добавьте в него новую строку и сохраните:
Если вы выполните команду git status
, то увидите свои неотслеживаемые изменения в файле:
Мы видим, что у нас есть недобавленные изменения.
Для добавления изменений используется команда git add <название файла>
. Команда git add .
добавляет все изменения в рабочей директории в индекс для последующего коммита.
Коммит - это сохранение, фиксация (в архиве, репозитарии и т.д.) изменений в программном коде.
Команда git commit
берёт все данные, добавленные в индекс с помощью git add
, и сохраняет их слепок во внутренней базе данных, а затем сдвигает указатель текущей ветки на этот слепок.
Более подробная информация о коммите.
При коммите данных их необходимо комментировать, чтобы в дальнейшем каждое изменение в проекте было с описанием действий. Для этого используется команда
git commit -m "комментарий"
Теперь все нужные изменения добавлены в наш локальный репозиторий.
Для того чтобы залить изменения в удаленный репозиторий, который находится на git.miem.hse.ru, нужно использовать команду git push
.
Рассмотрим пример:
Создадим новый файл "text.txt" в папке "main" и выполним следующие действия:
Шаг 1. Добавим файл в нашу папку main;
Шаг 2. Зафиксируем изменения и узнаем текущее состояние файла;
Шаг 3. Отправим изменения в локальное хранилище (то есть выполним коммит).
С помощью команды git push
отправим данные локального репозитория на удаленный репозиторий (Origin - это наш репозиторий).
Заходим в GitLab и видим, что отправка данных прошла успешно.
Если вы добавили файлы в состояние ожидания, но передумали и не хотите добавлять некоторые из них, то нужно использовать команду:
git rm --cached "название файла"
Укажите, какой файл необходимо удалить из ожидания на коммит.
Если вы ввели неправильно пароль (на Windows), а во второй раз ваши данные не запрашиваются, то вам нужно сделать следующие действия:
панель управления -> учетные записи -> диспетчер учетных данных -> удалить данные GitLab
После чего заново повторить первые шаги с вводом ваших данных.
Чтобы на устройствах Linux/Mac каждый раз не запрашивался пароль, нужно использовать следующую команду:
git config credential.helper store