1. Використання Git та GitHub для
створення навчального контенту
Олександр Пупена
АКТСУ НУХТ
2. - посібники
- наповнення навчальних курсів (будь яке наповнення)
- статті
- будь який проект
Контент
3. - контроль версійності:
- це дійсно остання версія?
- а що там змінилося?
- сумісна розробка:
- як з'єднати разом
- розподілення завдань
- контроль та керування виконанням
- публічний ВЕБ-доступ до потрібної інформації
- публічне обговорення та пропозиція внесення змін
- орієнтація на форму а не зміст
- автоматичне перетворення документів з однієї форми в
іншу
Проблеми при розробці контенту
4. Git – система керування версіями, розроблена перш за все для
програмних (software) проектів:
• керує сховищем (репозиторієм)
• відслідковує зміни в робочій директорії
• розробник робить фіксацію відтисків (commit)
• дає можливість робити альтернативні версії гілки (branch)
• дає можливість розподіленої розробки
Git
• для текстових файлів
показує не тільки які файли
змінилися, а і що саме
• тому важливо зміст давати в
текстовому файлі
5. • DOC і DOCX не є текстовими файлами, тому відслідковувати
зміст в них через GIT неможливо напряму (але є певні
рішення)
• альтернатива – формат MarkDown
• MarkDown – думай більше про зміст, менше форматуй
• легко конвертується у будь який інший, включаючи HTML,
DOCX, PDF, файли електронних книг та інші
• є безкоштовні редактори, наприклад Typora (безкоштовний
в бета-версії)
• багатьма редакторами сайтів автоматично конвертується в
HTML
MarkDown (MD)
7. Сумісна розробка з використанням
розподіленої системи
• серверне (-ні) сховище(а)
• клієнтські локальні копії
• синхронізація сховищ:
• завантаження (push)
• вивантаження (pull)
• з'єднання гілок (merge)
8. Сумісна розробка: гілки
• паралельна робота над єдиним проектом – гілки (branch)
• при необхідності гілки об'єднуються (merge) – зміни з одної гілки
переносяться в іншу
9. GitHub
• GitHub - найбільший хостинг для сховищ (репозиторіїв) Git, та є
центром співпраці між мільйонами розробників та проектів
• публічні і приватні репозиторії
• усі можливості для безкоштовного використання відкритих
сховищ
• закриті сховища з обмеженнями (платні без обмежень)
10. GitHub – не тільки репозиторій
• обговорення (типу форуму)
• керування проектами:
• розподіл та керування завданнями (Канбан)
• контроль часу виконання
• пріоритетність
• автоматизація керування через різні події
• автоматичне розгортання – послідовне перетворення
контенту та запуск на ресурсах
• ВЕБ-сторінки
• статистика
11. Канбан
https://trello.com/
• дошки (Desc)
• списки (колонки, column)
• картки (Cards)
• переміщення картки (завдання)
між колонками за результатами
виконання
• контроль часу, обговорення в
межах картки
12. GitHub. Проекти
• за методикою канбан
• автоматизовані (можна задати
події переміщення з колонки в
колону)
• перетворюються в обговорення
(Issues)
13. GitHub. Обговорення (Issues)
- для обговорення будь якої
діяльності з репозиторієм
- форматований текст MD
- контроль часу
- мітки тем
- зв'язок з запитами на об'єднання
- фіксація самих гарячих
14. GitHub Pages
- статичні ВЕБ-сторінки, що формуються автоматично за вмістом
репозиторія, наприклад
- репозиорій - https://github.com/romamirkevich/PLCBeginner
- веб-сторінка - https://romamirkevich.github.io/PLCBeginner/
- зміни в репозиторію приводять до зміни веб-сторінок
- тільки для публічних репозиторіїв
15. GitHub Actions
- дозволяє використовувати скрипти для автоматизації
перетворення контенту та його запуску
16. - не тільки для коду
- відкриті і закриті сховища
- відслідковування (простежуваність) версій (хто коли і які зміни
вносив) за всю історію проекту
- керування версіями документів: можна відкотитися на будь яку
версію
- сумісна (одночасна) робота в одному проекті
- керування проектною діяльністю з використанням Канбан
- автоматизація діяльності щодо перетворення одних документів в
інший формат (наприклад в DOCX, PDF, заливка на Dropbox,
перетворення у ВЕБ-сторінки, Moodle, тощо);
- автоматичне створення власних Веб-сторінок за змістом
репозиторію
Висновки