ProgIngContrSystems

Матеріали дисципліни "Програмна інженерія в системах управління"

Програмна інженерія в системах управління. Лабораторний практикум. Автор і лектор: Олександр Пупена

<- до лабораторних робіт на основну сторінку курсу
   

Лабораторна робота №1. Основи роботи з Git, GitHub та Markdown

Тривалість: 4 акад. години (2 пари).

Порядок виконання роботи

Періодично робіть копії екранів для звітів.

1. Створення документації на основі MarkDown

2. Робота в GitHub

3. Робота в git

4. Сумісна робота Git з GitHub

5. Створення репозиторію для лабораторних робіт

  • Створіть публічний репозиторій на GitHub та зв’язаний з ним локальний репозиторій для звітів з лабораторних робіт
  • У корені робочої папки створіть файл README.md, якому напишіть наступну інформацію
# Звіти з лабораторних робіт

Прізвище Імя , група

- Лабораторна робота 1
- Лабораторна робота 2
- Лабораторна робота 3
- Лабораторна робота 4
- Лабораторна робота 5
- Лабораторна робота 6
- Лабораторна робота 7
- Лабораторна робота 8
  • У робочій директорії:
    • створіть папку lab1
    • у папці lab1 створіть папку media
    • у папці lab1 створіть файл README.md в якому оформіть звіт по даній лабораторній роботі, у звіті мають бути зображення копій екранів, розміщення яких зробити в папці media; зверніть увагу, що в README.md посилання на зображення мають мати відносні шляхи
  • У корені робочої директорії змініть файл README.md таким чином, щоб пункт Лабораторна робота 1 посилався на файл lab1/README.md
  • Зробіть коміт змін і Push у власний репозиторій GitHub
  • Переконайтеся що все в GitHub відображається коректно

Частина для курсової роботи

Ця частина виконується самостійно і не оцінюється в межах лабораторної роботи.

6. Створення репозиторію для курсової роботи

  • Створіть приватний репозиторій на GitHub та зв’язаний з ним локальний репозиторій для курсової роботи
  • У корені робочої папки створіть файл README.md, якому напишіть наступну інформацію
# Курсова робота

## Тема:

Прізвище Імя , група


  • Добавте в README.md таблицю з планом, взяту з

  • Відправте викладачу запрошення на добавлення до репозиторію GitHub

Питання до захисту

  1. Яка основна ідея використання MarkDown? Чому текстові формати подібні до MsWORD можуть не підійти для цих задач?
  2. Прокоментуйте принципи роботи застосунків MarkDown.
  3. Поясніть що таке Flavors MD? У чому причина появи різних Flavors?
  4. Перерахуйте основні елементи синтаксису форматування MarkDown.
  5. Назвіть ряд елементів розширеного синтаксису форматування MarkDown. Які обмеження їх використання?
  6. Як можна використовувати формули?
  7. Як можна рисувати діаграми?
  8. Яке призначення GitHub?
  9. Які типи репозиторіїв доступні в GitHub?
  10. Які функції роботи з репозиторієм у GitHub використані в даній практичній роботі?
  11. Розкажіть про добавлення користувачів до репозиторію в GitHub. Чи було це застосовано в даній практичній роботі?
  12. Розкажіть про можливості перегляду історії змін у GitHub. Чи було це застосовано в даній практичній роботі?
  13. Розкажіть про можливості сервісу Issue, які з них Ви використали в цій практичній роботі?
  14. Розкажіть про можливості публікації веб-сторінок на базі GitHub.
  15. Поясніть призначення систем керування версіями.
  16. Яке місце Git займає в різних класифікаціях систем керування версіями?
  17. Які принципи функціонування Git?
  18. Що таке робоча директорія Git?
  19. Що таке репозиторій Git?
  20. Що таке stage, commit?
  21. Що таке відстежувані (tracked) файли в Git? Як можна задати які файли будуть відстежувані?
  22. Як і що можна подивитися в історії проєкту.
  23. Що робить команда checkout в Git?
  24. У чому різниця між локальним Git-репозиторієм і віддаленим репозиторієм GitHub?
  25. Що відбувається під час клонування репозиторію з GitHub?
  26. Для чого використовується віддалений репозиторій з назвою origin?
  27. Чим відрізняється fetch від pull?
  28. Чому після виконання fetch файли у робочій директорії можуть не змінюватися?
  29. Що означає операція merge у контексті синхронізації з GitHub?
  30. У яких випадках виникає конфлікт змін?
  31. Чому Git не може автоматично розв’язати деякі конфлікти?
  32. У якій гілці з’являється результат злиття після розв’язання конфлікту?
  33. Які дії необхідно виконати для завершення злиття після конфлікту?
  34. Які способи мережної взаємодії між Git і GitHub були застосовані в лабораторній роботі? Як відбувається їх налаштування?