[ИС] АОВС
  • Аппаратное обеспечение вычислительных систем / ЭВМ (поток Скакова П.С.)
    • Краткое напоминание о том, как не получить долг
    • Полезные материалы
  • Организационные вопросы
    • Система оценивания
    • Правила оформления и написания работ
    • Работа с репозиторием
    • Отправка работ
    • Автотесты на GitHub
  • Инструментарий
    • Logisim evolution
    • Verilog/SystemVerilog
Powered by GitBook
On this page
  • Получение репо
  • Структура репо
  • Загрузка решения
  • Автотесты (GitHub Actions)
  1. Организационные вопросы

Работа с репозиторием

PreviousПравила оформления и написания работNextОтправка работ

Last updated 2 months ago

Получение репо

Работы выполняются с использованием системы контроля версий GitHub. Для работы с системой требуется зарегистрироваться на .

После регистрации нужно присоединиться к GitHub Classroom. Это можно сделать, перейдя по ссылке репозитория.

После того, как вы примите задание, будет автоматически создан приватный репозиторий, в который нужно будет загружать вашу работу. Что от вас ожидается в репозитории вы увидите в условии работы.

Если после перезагрузки страницы вы видите сообщение "Repository Access Issue" ("You no longer have access to your assignment repository. Contact your teacher for support"), то перезагрузите страницу секунд через 10-20 несколько раз, пока вам не выдадут ссылку.

Структура репо

Изначально у вас будет 2 ветки main и feedback.

Вся разработка ведётся на main, а на feedback производятся отправки решения на проверку через Pull Request, который вам уже создан автоматически. В случае, если работа подразумевает написание кода, то можно создавать другие ветки и работать на них, но к моменту отправки работы нужно не забыть положить всё на main.

На main может лежать .github, .gitignore, .gitattributes, test_data, README.md, REPORT.md:

  • .github, test_data – настройка автотестов, модифицировать содержимое запрещено;

  • .gitignore, .gitattributes – преднастроенные файлы для работы git, модифицировать содержимое запрещено (возможно изменения для всех, если будет выдвинуто аргументированное предложение);

  • README.md – информация по тестированию и требуемым файлам для загрузки в репозиторий, не редактируем;

  • [опционально] REPORT.md – шаблон отчёта, будет присутствовать в работах, где отчёт необходим.

.gitignore – общие правила по игнорированию файлов. Они единые для всех. Если есть необходимость заигнорировать файлы/папки, которые возникли лично у вас в локальном репозитории (часть вашего рабочего окружения, тесты, которые не хочется заливать и т.д.) – то следует это делать через редактирование файла, который лежит в git-репозитории и не коммитуется никуда.

Загрузка решения

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

Категорически не допускается загрузке в репозиторий не имеющих отношения к работе файлов, а также скомпилированных программ, промежуточных файлов и файлов, создаваемых средами разработки, например:

  • */Debug, */Release и прочее от Visual Studio.

  • .idea и прочее от CLion.

То есть, в репозиторий можно отправлять только файлы *.c, *.h, *.cpp, *.hpp, *.v || *.sv, *.circ и дополнительные файлы, изначально размещающиеся в репозитории, если другое не указано в условии задания. Если в репозиторий будет загружен CMakeLists.txt или Lab.sln/Lab.vcxproj, то это не запрещается, но при сборке на тестовом стенде у проверяющего никак использоваться и учитываться не будет.

Автотесты (GitHub Actions)

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

Дополнительным требованием в работе может быть прохождение автотестов на GitHub, об этом написано в условии работы.

Подробнее: Автотесты на GitHub

GitHub
.git/info/exclude