Організація завдань на GitHub

Організація завдань на GitHub – ITEDU Blog

GitHub давно вийшов за межі платформи для зберігання коду та поступово перетворився на повноцінний простір для командної роботи.

У попередніх матеріалах ми вже знайомили вас з платформою GitHub та розповіли як GitHub Copilot допомагає автоматизувати частину рутини спеціалістів. Настав час перейти до ще двох важливих інструментів — Issues та Projects

Ми навчимо вас створювати завдання, організовувати їх у GitHub Projects та будувати workflow (робочий процес), у якому робота не губитиметься між вкладками й нотатками. 

Почнемо?  

Що таке Issues та Projects і як вони допомагають організовувати роботу

Issues (завдання) — це окремі таски або ідеї в межах проєкту.

Project (проєкт) — це система, яка власне допомагає організувати самі завдання. 

Наприклад, DevOps-команда працює над розгортанням нової інфраструктури для проєкту.

Issues у такому випадку можуть бути такими:

  • налаштувати CI/CD pipeline;
  • оновити конфігурацію Docker-контейнерів;
  • виправити проблему з деплоєм;
  • додати моніторинг серверів;
  • налаштувати резервне копіювання.

Кожне завдання створюється окремо та містить опис, статус, пріоритет і відповідального спеціаліста.

Project, у свою чергу, допомагає зібрати всі ці завдання в одному просторі та організувати workflow команди. 

Ці дві функції є надважливою частиною продуктивної роботи, особливо в середовищах, де одночасно ведеться багато процесів. 

  • Для спеціалістів це зручний спосіб швидко орієнтуватися у своїй роботі, бачити чіткі дедлайни та статуси в яких знаходяться таски.  
  • Для PM (project manager) або керівництва це можливість ефективно координувати процеси, бачити загальну картинку та не втрачати важливе в потоці комунікації. 

Створення Issues у GitHub

Саме з Issues зазвичай починається робота над новими функціями або ж оновленнями в проєкті. Це простий спосіб швидко зафіксувати все, що потребує уваги, і не тримати все у голові. 

Як створити перше завдання

  1. У верхній частині сторінки відкрийте вкладку Issues.
  2. У правому верхньому куті натисніть зелену кнопку New issue.
  3. Після цього відкриється вікно для створення нового завдання. Спершу додайте чітку назву в поле Add a title (додати назву), вона має коротко пояснювати суть завдання.
  4. Нижче знаходиться поле Add a description (додати опис). Тут можна детальніше описати таску, над якою потрібно попрацювати. Коректний опис допомагає команді швидше зрозуміти контекст і те, який результат очікується.
  5. Праворуч також є кілька додаткових параметрів для організації роботи:
    • Assignees (виконавці): дозволяє призначити відповідального за виконання завдання;
    • Labels (мітки): допомагають сортувати доручення за категоріями;
    • Type (тип): вказує тип таски, наприклад баг, покращення або нова функція;
    • Projects (проєкт): дає змогу додати айтем до конкретного проєкту;
    • Milestone (етап): допомагає прив’язати таску до певного етапу роботи або дедлайну.
  6. Коли все готово, натисніть кнопку Create issue (створити завдання).

Готово! Тепер учасники команди можуть залишати коментарі, обговорювати деталі роботи та навіть пов’язувати між собою різні завдання для зручнішого відстеження.

А після завершення роботи Issue можна закрити, щоб команда бачила, що його успішно виконано.

Створення Project у GitHub

Projects допомагають розбити великі цілі на менші завдання та тримати весь процес перед очима.

До того ж project boards допомагають синхронізації команд між собою. Працівники бачать актуальні пріоритети та підтримують workflow, у якому кожен розуміє, що вже зроблено, що у роботі зараз і що чекає своєї черги.

Спробувати створити власну дошку можна як у прикладі репозиторію, так і у власному проєкті. 

Як створити новий проєкт

  1. У верхній частині сторінки відкрийте вкладку Projects.
  2. У правому верхньому куті натисніть кнопку New project.
  3. GitHub запропонує кілька шаблонів. Для старту рекомендують Kanban — саме його найчастіше використовують для організації робочого процесу. 
  4. Введіть назву проєкту в поле Project name.
  5. Приберіть прапорець із пункту Bulk add items (масове додавання елементів). Це допоможе не додавати всі завдання до проєкту автоматично та краще контролювати workflow вже на старті. 
  6. Натисніть кнопку Create project.

Проєкт створено! У верхній частині сторінки ви побачите його назву, а також кілька готових стовпців для організації роботи. Зазвичай вони допомагають розділяти завдання за статусами, наприклад: «To Do», «In Progress» та «Done». За потреби ці стовпці можна редагувати. 

Також зверніть увагу на вкладки під назвою проєкту — вони відповідають за різні режими перегляду борда. Це допомагає командам по-різному візуалізувати робочі процеси залежно від власних потреб.

Щоб перейти до детальніших налаштувань, натисніть три крапки у верхньому правому куті та відкрийте Settings (налаштування). Тут можна:

  • керувати доступом до проєкту;
  • створювати власні поля;
  • змінювати структуру workflow;
  • оновлювати поточні поля;
  • редагувати назву та опис проєкту;
  • додавати README (файл з базовою інформацією про проєкт);
  • створювати копію борда;
  • змінювати видимість проєкту.

Налаштування діаграм у GitHub

Коли кількість завдань у проєкті росте, тримати все під контролем через монотонний список може бути складно. Але в GitHub можна налаштувати діаграми для візуалізації прогресу, швидко оцінити стан роботи й навантаження команди. 

Як створити діаграму

  1. Відкрийте створений проєкт.
  2. Оберіть потрібний тип відображення:
    • Table View (формат таблиці);
    • Board View (формат дошки з картками);
    • Roadmap (формат часової шкали);
  3. Налаштуйте фільтри та сортування.
  4. Додайте необхідні поля або категорії. 

Автоматизація workflow у GitHub

GitHub Projects також дозволяє автоматизувати частину рутинних процесів.

Наприклад, платформа може самостійно оновлювати статуси завдань залежно від того, що відбувається в проєкті. Це допомагає команді витрачати менше часу на ручне оновлення дошок і підтримувати актуальний статус тасок.

Як автоматизувати робочі процеси

  1. Поверніться до головного вікна проєкту.
  2. У верхній частині сторінки натисніть кнопку Workflows, яка знаходиться поруч із вкладкою Insights (Статистика).
  3. Після цього в лівій частині екрана відкриється список доступних робочих процесів.

Тут GitHub запропонує кілька готових автоматизацій для роботи із завданнями. Наприклад:

  • автоматично встановлювати статус «To Do» для нових доручень;
  • переміщувати айтеми після оновлення статусу;
  • автоматично визначати Issues як «Done» після його закриття.

Оновлення статусу проєкту в GitHub

Наприклад, ви хочете швидко повідомити колег, що частина роботи вже завершена або ж щось потребує їхньої уваги. Саме для таких коротких апдейтів у GitHub Projects є функція оновлення статусу.

Як оновити статус

  1. Поверніться до головного вікна проєкту.
  2. У верхній частині сторінки натисніть кнопку Add status update.
  3. Після цього відкриється вікно, де можна додати короткий звіт про стан та прогрес виконання проєкту.

Синхронізація Issues та Projects в GitHub

Уявіть собі таски як окремі завдання, а проєкти — як панель інструментів, яка їх організовує. Коли ви пов’язуєте таски з проєктною дошкою, ви можете з першого погляду візуалізувати поточний стан справ.

Як пов’язати issues з project

  1. Відкрийте ваш проджект борд.
  2. У нижній частині вікна натисніть кнопку Add item.
  3. Тут ви можете:
    • створити нове завдання;
    • або додати вже наявні Issues із репозиторію.
  4. Натисніть іконку + та оберіть Add item from repository.
  5. Після цього виберіть завдання, які хочете додати до проєкту. За потреби можна одразу обрати кілька елементів або весь список.
  6. Натисніть Add selected items.

Після цього всі вибрані таски з’являться на дошці проєкту у вигляді окремих карток. Їх можна переміщувати між стовпцями відповідно до статусу роботи. 

До речі, тепер завдання та проєктна дошка синхронізуються між собою автоматично. Якщо змінити статус завдання в одному місці — зміни одразу відобразяться й в іншому. Також ви можете переміщувати кілька айтемів між стовпцями одночасно, підтримуючи зрозумілий workflow команди та спостерігаючи, як вони поступово переходять у найприємніший статус — «Done».

Як організований робочий flow у GitHub

А тепер змоделюємо простий робочий процес, який команди часто використовують у реальних проєктах,

У цьому прикладі ми створимо нове завдання, додамо його до workflow та простежимо весь шлях — від створення до завершення роботи.

Уявімо, що команда працює над оновленням CI/CD pipeline для застосунку. Для цього потрібно створити окрему таску, додати її до workflow та відстежувати прогрес роботи всієї команди.

  1. Відкрийте dashboard свого проєкту.
  2. Унизу першого стовпця натисніть кнопку Add item.
  3. Натисніть іконку + та оберіть Create new issue.
  4. Додайте назву, наприклад: Update CI/CD pipeline for staging environment
  5. У полі опису коротко вкажіть, що саме потрібно змінити або налаштувати.
  6. Натисніть Create, щоб створити таску та автоматично додати її до борда.
  7. Під описом відкрийте розділ Labels та оберіть відповідну категорію.
  8. Після цього відкрийте Issue безпосередньо з дошки проєкту, щоб перейти до детальніших налаштувань.
  9. У правій частині сторінки натисніть іконку шестерні поруч із пунктом Assignees та призначте відповідального спеціаліста.
  10. У процесі роботи команда може залишати коментарі, ділитися оновленнями або фіксувати прогрес виконання прямо всередині таски.
  11. Коли частина роботи вже виконана, створіть Pull Request (запит на внесення змін) та в його описі додайте:

Closes #номер_завдання

Наприклад:

Closes #12

  1. GitHub автоматично зв’яже Pull Request із відповідним айтемом та додасть зручне посилання між ними.
  2. Після злиття Pull Request система автоматично закриє Issue та оновить статус. 

Цей робочий процес дозволяє всім узгодити роботу без необхідності постійних дзвінків. Уся важлива інформація — завдання, прогрес роботи та оновлення — уже зібрана в просторі GitHub. 

Замість висновків

Чим раніше ви почнете знайомитися з такими системами організації роботи, тим легше буде орієнтуватись у цих процесах у майбутньому. 

Почніть із кількох тасок, далі спробуйте створити окремі проєктні дошки. Поступово це перетвориться на систему, яка працюватиме на вас та підтримуватиме лад.Також не бійтеся експериментувати та адаптовувати workflow під власні цілі. А якщо хочеться глибше зануритися в можливості платформи, радимо також ознайомитися з офіційною документацією GitHub.

Залишити відповідь

Дякуємо, що поділились