Git

Заведение проекта на Git.miem.hse с нуля

  1. Зайдите по адресу https://git.miem.hse.ru/ и авторизуйтесь с помощью аккаунта в домене miem.hse.ru

2. Группы для всех проектов были созданы автоматически. Для того, чтобы посмотреть доступные вам группы, выберите в верхнем меню "Groups" -> "Your groups".


3. Необходимые репозитории вам нужно создать вручную. По всем репозиториям, размещенным внутри группы, собирается статистика , которая размещается в личном кабинете.
Для создания нового репозитория перейдите на страницу группы и нажмите на кнопку "New project".


На открывшейся странице задайте имя нового репозитория на английском языке. Остальные поля не изменяйте. Описание можете задать по желанию.

Так же перейти на группы GitLab можно быстро из личного кабинета.

Для этого зайдите на страницу проекта и найдите блок "Рабочий процесс". По клику на иконку GitLab'a вы перейдете на группу данного проекта.

Что делать, если у меня уже есть репозиторий на git.miem.hse.ru?

  1. Если вы ранее создали проект в другом репозитории GitLab (не в официальной группе), то его можно легко перенести. Для этого зайдите на страницу проекта, который хотите перенести и зайдите в настройки.

2. Опуститесь до раздела "Advanced" и разверните его с помощью кнопки "Expand".

Найдите внутри блок "Transfer project" и с помощью селектора выберите новое расположение.

ВАЖНО: переместить проект может человек только с ролью " Maintainer" (подробнее в разделе "Участники и роли")

Что делать, если у меня уже есть репозиторий на другой платформе?

Если проект был создан на другой платформе (Github, Bitbucket и т.д), то при создании нового репозитория (описано в пункте 3 заведения проекта с нуля) откройте вверху вкладку "Import project" вместо "Blank project", а затем выберите "Repo by URL".

ВАЖНО: обязательно выбрать "Repo by URL", в остальных случаях импорт не всегда проходит успешно.

Подробнее о миграции проектов: https://docs.gitlab.com/ee/user/project/import/

При этом вся информация по коммитам будет перенесена. Однако, чтобы она корректно отображалась и учитывалась в статистике, необходимо, чтобы коммиты были сделаны с почты miem.hse.ru. Если коммиты были сделаны с другой почты, то необходимл добавить ее адрес в личном кабинете в Git.miem.hse.ru (подробнее в блоке "Особенности работы)

Как настроить клонирование коммитов из внешнего репозитория в репозиторий на git.miem.hse.ru (mirroring)?

Можно настроить репозиторий так, чтобы он автоматически копировал ветки, теги и коммиты из репозитория на другой платформе (например, GitHub).

Для этого выберите в меню слева Settings > Repository. Найдите пункт "Mirroring repositories" и нажмите кнопку "Expand", чтобы раскрыть подробности.


Участники и роли

Все участники проекта добавлены в группу автоматически. Если кого-то из участников не хватает, это значит, что он еще не заходил под своим аккаунтом в Git.
После того, как он это сделает, спустя какое-то время, участник будет добавлен автоматически.

Актуальный список участников группы можно посмотреть на странице группы во вкладке "Members".

Так же участника можно добавить вручную через форму "Invite member" на странице группы. Для этого необходимо указать почту или имя участника и его роль, а затем нажать на кнопку "Invite".

ВАЖНО: добавить участника в проект может человек только с ролью " Maintainer"

Как дать права " Maintainer" студенту?

Создавать репозитории, добавлять участников и пушить в мастер ветку может только участник с правами "Maintainer".

Maintainer'ом по умолчанию назначается - руководитель проекта или направления.

Если есть необходимость в том, чтобы был назначен студент, то можно сделать это двумя способами:

  1. Руководитель может зайти в список участников группы, расположенный на странице группы во вкладке "Members". Справа от имени каждого участника есть селектор с выбором роли. Руководитель проекта может самостоятельно дать кому-то из студентов права "Maintainer".


2. Написать в официальный чат миэм в поддержку: https://chat.miem.hse.ru/#narrow/stream/1090-.D0.A2.D0.B5.D1.85.D0.BF.D0.BE.D0.B4.D0.B4.D0.B5.D1.80.D0.B6.D0.BA.D0.B0--.20.D1.81.D0.BB.D1.83.D0.B6.D0.B5.D0.B1.D0.BD.D1.8B.D0.B9.20.D0.BA.D0.B0.D0.BD.D0.B0.D0.BB/topic/git

Особенности работы

Если были коммиты не с @miem.hse.ru аккаунта

В статистике по гиту, размещенная в личном кабинете, учитываются коммиты сделанные только с почты, размещенной в домене miem.hse.ru.
Если вы сделали часть коммитов с другой почты, то необходимо добавить ее в настройках аккаунта. Для этого зайдите в настройки профиля: Иконка профиля в правом верхнем углу -> "Settings", затем выберите в боковом меню раздел "Emails"

Там вы сможете указать дополнительную почту.
ВАЖНО: обязательно необходимо перейти по ссылке из письма с подтверждением, которое придет на указанный адрес. Чтобы статистика появилась в Личном кабинете необходимо сделать хотя бы один коммит в репозиторий после добавления почты.

Работа с веткой master

По-умолчанию, master ветка - защищенная (protected). Т.е. в нее может пушить только Maintainer. Лучше всего - работать в другой ветке и делать merge request в master. Либо (не рекомендуется) - убирать защиту с master ветки.

Как создать ветку и сделать merge request:

git checkout -b <new-branch> //создание новой ветки, вместо <new-branch> - Имя ветки (например, development)

git add . //точка после git add означает, что git будет следить за всеми файлами

git commit -m '<Комментрий>' //вместо <Комментрий> - комментарий к коммиту

git push -u origin <BRANCH> //вместо <BRANCH> - имя ветки, куда пушим (в нашем случае development)


Затем заходим в проект и в боковом меню выбираем вкладку "Merge Requests".

В открывшемся окне нажмите на кнопку "New Merge Request" для создания навого запроса на слияния одной ветки с другой.


В разделе "Source branch" выберите ветку, из которой хотите добавить изменения (в нашем случае development). В качестве "Target branch"выберите master.
Затем нажмите на кнопку "Compare branches and continue". Если не возникло конфликтов, на новой странице задайте заголовок, описание и в поле Assignee выберите своего руководителя.

Подробнее о правильной работе с GitFlow можно прочитать здесь: https://bitworks.software/2019-03-12-gitflow-workflow.html

Где посмотреть статистику по Git в Личном кабинете?

  1. На странице проекта.

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

ВАЖНО: учитываются только репозитории, созданные в официальной группе проекта

2. В профиле студента

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