Продолжу выкладывание примеров использования GitHub'а как инструмента обучения.
Предыдущий пример
Вариант командной работы
Продолжу вариантом про командную работу. Но рассмотрю ту его версию, когда нет большого числа репозиториев и веток. Про работу большой команды расскажу, наверное, в отдельном посте.
Примерный порядок действия
Создаёте аккаунт организации
Добавляете в него студентов.
Создаёте репозиторий. В README.md добавляете текст задания. Также наполняете репозиторий предварительно необходимым минимумом (нужными файлами для выполнения задания). Создаёте необходимые ветви. Обычно создаю ветвь dev или develop
Студенты получив задания, делают ответвления от последнего коммита. Выполняют задания, коммитят. Задания можно выдавать как через
issues
, так и какой-нибудь сервис с Kanban или Scrum
Создают запрос на слияние
Проверяете. Оставляете комментарии либо ко всему заданию целиком, либо к его отдельным частям.
Плюсы и минусы
Плюсы:
Более приближенный к реальности вариант моделирования
Можно назначать студентов в качестве ревьюеров кода. Даже преподавательского. Я люблю делать в коде специально ошибки как явные, так и неявные, чтобы студенты их находили и исправляли.
Минусы:
Нужно создавать отдельный аккаунт для организации
Нужно объяснить как работать с ветками и следить, чтобы пушили в нужную ветку.
Какие можно внести дополнения: связать репозиторий с Kanban- или Scrum-сервисом, чтобы выдача заданий фиксировалась в карточках на досках.
Продолжение следует…
sugrobov
Как вариант, можно попробовать в качестве доски встроенный GitHub Projects. Или использовать монорепозиторий со всеми ДЗ:
AnSt Автор
Спасибо за ценный комментарий.
Про GitHub Pages будет в следующих статьях. Где про разработку «большого» проекта несколькими командами в разных репозиториях.
Так и делаю.
Интересный вариант. Постараюсь попробовать его.
sugrobov
Буду ждать продолжения :)
Правда я имел в виду не Pages, а Projects — треллоподобный аналог от Гита.
AnSt Автор
Это я очепятался. Мы пробовали делать большой проект с разными репозиториями и с подпроектами.
Но интерфейс не сильно понравился. Trello ка-то больше нравится.