Skip to content

Latest commit

 

History

History
125 lines (89 loc) · 5.84 KB

part1-git.md

File metadata and controls

125 lines (89 loc) · 5.84 KB

Инструкции по работе с Git

В данном разделе описана типичная последовательность действий, которую необходимо выполнить перед тем, как начать работать с проектом. Далее для определенности используется репозиторий mp2-lab1-set.

Первичная настройка Git

  1. Инсталлировать клиент Git:

  2. Настроить имя пользователя, из под которого будут выполняться все операции с репозиториями Git:

$ git config --global user.name  "Your Name"
$ git config --global user.email "your.email@mail.com"

Клонирование репозитория с проектом-шаблоном

  1. Создать аккаунт на github.com, если такой отсутствует. Для определенности обозначим аккаунт GITHUB-ACCOUNT.

  2. Открыть в браузере репозиторий по адресу https://github.com/UNN-VMK-Software/mp2-lab1-set.

  3. Сделать fork репозитория c проектом-шаблоном (в терминологии Git upstream-репозиторий) к себе в личный профиль с названием GITHUB-ACCOUNT (см. одноименную кнопку на странице репозитория). В результате будет создана копия репозитория с названием https://github.com/github-account/mp2-lab1-set (origin-репозиторий).

  4. Клонировать origin репозиторий к себе на локальный компьютер, воспользовавшись следующей командой:

$ git clone https://github.com/GITHUB-ACCOUNT/mp2-lab1-set
  1. Перейти в директорию mp2-lab1-set:
$ cd ./mp2-lab1-set

Внесение изменений, их регистрация и публикация

Когда сделан fork репозитория, по умолчанию у вас создается единственная ветка master. При решении независимых задач следует создавать рабочие ветки.

  1. Получить список веток:
$ git branch [-v]
# [-v] - список с информацией о последних коммитах
  1. Создать ветку:
$ git branch bitfield-implementation
  1. Создать ветку bitfield-implementation и перейти в нее:
$ git checkout [-b] bitfield-implementation
# [-b] - создание и переход в ветку <branch_name>

При работе с файлами в ветке необходимо управлять изменениями. Далее приведен перечень основных команд в предположении, что текущей рабочей веткой является master.

  1. Получить список текущих изменений:
$ git status
  1. Пометить файл как добавленный в текущую ветку репозитория (файл будет добавлен после выполнения команды git commit):
$ git add [<file_name>]
# <file_name> - название файла для добавления в commit
#  если вместо имени указан символ *, то будут добавлены все новые файлы,
#  расширение которых не указано в .gitignore
  1. Добавить изменения в текущую ветку локального репозитория:
$ git commit [-m "Some comment for your changes"] [-a]
# [-a] - автоматически добавляет изменения для существующих на сервере файлов
#  без выполнения команды git add
# [--amend] - перезаписывает последний коммит (используется, если не забыты
#  изменения)
  1. Разместить изменения, которые были добавлены в локальный репозиторий с помощью команды git push:
$ git push origin HEAD

Создание pull-request

Чтобы обеспечить возможность удаленной проверки работы (включая автоматический запуск и проверку корректности тестов), необходимо создать Pull Request в upstream-репозиторий:

  1. Открыть в браузере https://github.com/GITHUB-ACCOUNT/mp2-lab1-set.
  2. Нажать кнопку Pull Request в строке над исходными кодами, содержащей информацию о последних коммитах.

После этого вы можете добавлять коммиты в локальную ветку. Если после этого вы снова выполните команду git push, то содержимое pull request автоматически обновится. Так вы сможете итеративно доводить свою работу до конца, просматривая изменения онлайн.