Skip to content

Commit 00cbd97

Browse files
committed
1 parent c417ac5 commit 00cbd97

4 files changed

Lines changed: 393 additions & 3 deletions

File tree

log.ipynb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,13 +70,14 @@
7070
"metadata": {},
7171
"source": [
7272
"22/01\n",
73-
"1. Сделал ишью: https://github.com/SENATOROVAI/intro-cs/issues/3"
73+
"1. Сделал ишью: https://github.com/SENATOROVAI/intro-cs/issues/3\n",
74+
"2. Сделал ишью: https://github.com/SENATOROVAI/intro-cs/issues/2"
7475
]
7576
}
7677
],
7778
"metadata": {
7879
"kernelspec": {
79-
"display_name": ".venv",
80+
"display_name": "base",
8081
"language": "python",
8182
"name": "python3"
8283
},
@@ -90,7 +91,7 @@
9091
"name": "python",
9192
"nbconvert_exporter": "python",
9293
"pygments_lexer": "ipython3",
93-
"version": "3.11.9"
94+
"version": "3.13.9"
9495
}
9596
},
9697
"nbformat": 4,

log.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,4 @@
3434

3535
# 22/01
3636
# 1. Сделал ишью: https://github.com/SENATOROVAI/intro-cs/issues/3
37+
# 2. Сделал ишью: https://github.com/SENATOROVAI/intro-cs/issues/2

python/issues.ipynb

Lines changed: 207 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,207 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "39c48f2d",
7+
"metadata": {},
8+
"outputs": [],
9+
"source": [
10+
"\"\"\"Описание issues.\"\"\""
11+
]
12+
},
13+
{
14+
"cell_type": "markdown",
15+
"id": "266d9430",
16+
"metadata": {},
17+
"source": [
18+
"# Список вопросов по работе с Issues на GitHub\n",
19+
"\n",
20+
"## Общие вопросы:\n",
21+
"\n",
22+
"**1. Что такое Issues на GitHub и для чего они используются?**\n",
23+
"\n",
24+
"Ответ: \n",
25+
"\n",
26+
"Issues - это система отслеживания задач, багов, идей и обсуждений в репозитории GitHub. Используются для управления проектом, отслеживания ошибок, планирования функций и коммуникации между участниками.\n",
27+
"\n",
28+
"**2. Чем Issues отличаются от других инструментов управления задачами?**\n",
29+
"\n",
30+
"Ответ: \n",
31+
"\n",
32+
"Issues интегрированы непосредственно в репозиторий, автоматически связываются с коммитами и Pull Request'ами, имеют встроенную систему меток и milestone'ов, и доступны всем участникам репозитория без дополнительных подписок.\n",
33+
"\n",
34+
"**3. Какие основные компоненты (поля) есть у каждого Issue?**\n",
35+
"\n",
36+
"Ответ: \n",
37+
"\n",
38+
"Заголовок, описание, метки (labels), исполнитель (assignee), milestone, связанные Pull Request'ы, комментарии, статус (открыт/закрыт), дата создания и последнего обновления.\n",
39+
"\n",
40+
"## Создание Issues:\n",
41+
"\n",
42+
"**1. Как создать новое Issue в репозитории?**\n",
43+
"\n",
44+
"Ответ: \n",
45+
"\n",
46+
"На странице репозитория нажать кнопку \"Issues\" -> \"New issue\", заполнить заголовок и описание, затем нажать \"Submit new issue\".\n",
47+
"\n",
48+
"**2. Какие данные рекомендуется указывать в описании Issue для лучшего понимания задачи?**\n",
49+
"\n",
50+
"Ответ: \n",
51+
"\n",
52+
"Контекст проблемы, шаги для воспроизведения (для багов), ожидаемое и фактическое поведение, версия/окружение, скриншоты или примеры кода, приоритет.\n",
53+
"\n",
54+
"**3. Какие теги (labels) можно добавить к Issue? Какие из них стандартные?**\n",
55+
"\n",
56+
"Ответ: \n",
57+
"\n",
58+
"Можно создать любые кастомные метки. Стандартные: bug, enhancement, documentation, question, help wanted, good first issue, invalid, wontfix. Метки настраиваются в разделе Labels репозитория.\n",
59+
"\n",
60+
"**4. Как прикрепить Assignees (ответственных) к Issue?**\n",
61+
"\n",
62+
"Ответ: \n",
63+
"\n",
64+
"В правой панели Issue нажать \"Assignees\" и выбрать пользователя из списка участников репозитория. Можно назначить несколько исполнителей.\n",
65+
"\n",
66+
"## Работа с Issues:\n",
67+
"\n",
68+
"**1. Как использовать Labels для классификации задач?**\n",
69+
"\n",
70+
"Ответ: \n",
71+
"\n",
72+
"Создать набор меток по категориям (тип: bug/feature, приоритет: high/medium/low, статус: in-progress/review) и применять их к Issues для фильтрации и организации работы.\n",
73+
"\n",
74+
"**2. Для чего нужен Milestone, и как связать его с Issue?**\n",
75+
"\n",
76+
"Ответ: \n",
77+
"\n",
78+
"Milestone группирует Issues для достижения конкретной цели или релиза. Связать: в правой панели Issue выбрать \"Milestone\" и указать нужный milestone.\n",
79+
"\n",
80+
"**3. Как привязать Issue к пул-реквесту (Pull Request)?**\n",
81+
"\n",
82+
"Ответ: \n",
83+
"\n",
84+
"В описании или комментарии PR написать \"Closes #123\" или \"Fixes #123\" (где 123 - номер Issue). GitHub автоматически свяжет их, и Issue закроется при слиянии PR.\n",
85+
"\n",
86+
"**4. Как добавить комментарий к существующему Issue?**\n",
87+
"\n",
88+
"Ответ: \n",
89+
"\n",
90+
"Прокрутить вниз до поля \"Write\" в разделе комментариев, ввести текст и нажать \"Comment\". Можно использовать Markdown и упоминать пользователей через @username.\n",
91+
"\n",
92+
"## Закрытие и завершение Issues:\n",
93+
"\n",
94+
"**1. Как закрыть Issue вручную?**\n",
95+
"\n",
96+
"Ответ: \n",
97+
"\n",
98+
"На странице Issue нажать кнопку \"Close issue\" внизу страницы или в правом верхнем углу. Можно также использовать комментарий с ключевым словом \"close\" или \"closes\".\n",
99+
"\n",
100+
"**2. Можно ли автоматически закрыть Issue с помощью сообщения в коммите или пул-реквесте? Как это сделать?**\n",
101+
"\n",
102+
"Ответ: \n",
103+
"\n",
104+
"Да. В сообщении коммита или описании PR указать \"Closes #123\", \"Fixes #123\", \"Resolves #123\" или \"Closes #123, #456\" (для нескольких Issues). При слиянии PR Issues автоматически закроются.\n",
105+
"\n",
106+
"**3. Как повторно открыть закрытое Issue, если работа ещё не завершена?**\n",
107+
"\n",
108+
"Ответ: \n",
109+
"\n",
110+
"На странице закрытого Issue нажать кнопку \"Reopen issue\" внизу страницы. Также можно добавить комментарий, и GitHub предложит переоткрыть Issue.\n",
111+
"\n",
112+
"## Фильтрация и поиск:\n",
113+
"\n",
114+
"**1. Как найти все открытые или закрытые Issues в репозитории?**\n",
115+
"\n",
116+
"Ответ: \n",
117+
"\n",
118+
"На странице Issues использовать фильтры: \"Open\" для открытых, \"Closed\" для закрытых. Или в поиске указать \"is:open\" или \"is:closed\".\n",
119+
"\n",
120+
"**2. Как использовать фильтры для поиска Issues по меткам, исполнителям или другим критериям?**\n",
121+
"\n",
122+
"Ответ: \n",
123+
"\n",
124+
"Использовать поисковые операторы: \"label:bug\" для меток, \"assignee:username\" для исполнителя, \"author:username\" для автора, \"milestone:name\" для milestone. Можно комбинировать: \"is:open label:bug assignee:john\".\n",
125+
"\n",
126+
"**3. Как сортировать Issues по приоритету, дате создания или другим параметрам?**\n",
127+
"\n",
128+
"Ответ: \n",
129+
"\n",
130+
"В разделе Issues использовать выпадающее меню \"Sort\" и выбрать: \"Newest\", \"Oldest\", \"Most commented\", \"Least commented\", \"Recently updated\", \"Least recently updated\".\n",
131+
"\n",
132+
"## Интеграции и автоматизация:\n",
133+
"\n",
134+
"**1. Как настроить автоматические уведомления о новых или изменённых Issues?**\n",
135+
"\n",
136+
"Ответ: \n",
137+
"\n",
138+
"В настройках GitHub (Settings -> Notifications) включить уведомления для репозитория. Можно подписаться на конкретный Issue, нажав \"Subscribe\" в правой панели.\n",
139+
"\n",
140+
"**2. Что такое Projects в контексте GitHub, и как связать их с Issues?**\n",
141+
"\n",
142+
"Ответ: \n",
143+
"\n",
144+
"Projects - это доски Kanban для управления Issues и PR. Связать: в правой панели Issue выбрать \"Projects\" и добавить в нужный проект. Issues автоматически появятся как карточки.\n",
145+
"\n",
146+
"**3. Какие сторонние инструменты можно использовать для автоматизации работы с Issues (например, боты, Webhooks)?**\n",
147+
"\n",
148+
"Ответ: \n",
149+
"\n",
150+
"GitHub Actions для автоматизации, боты (Dependabot, Stale bot), Webhooks для интеграции с внешними системами (Jira, Slack), API GitHub для создания собственных скриптов автоматизации.\n",
151+
"\n",
152+
"## Коллаборация:\n",
153+
"\n",
154+
"**1. Как упомянуть другого пользователя в комментарии к Issue?**\n",
155+
"\n",
156+
"Ответ: \n",
157+
"\n",
158+
"Использовать @username в комментарии. Пользователь получит уведомление. Можно упомянуть команду через @organization/team-name.\n",
159+
"\n",
160+
"**2. Как запросить дополнительные данные или уточнения у автора Issue?**\n",
161+
"\n",
162+
"Ответ: \n",
163+
"\n",
164+
"Добавить комментарий с вопросами, упомянув автора через @username. Можно использовать шаблон комментария или попросить автора обновить описание Issue.\n",
165+
"\n",
166+
"**3. Что делать, если Issue неактуально или его нужно объединить с другим?**\n",
167+
"\n",
168+
"Ответ: \n",
169+
"\n",
170+
"Если неактуально - закрыть с комментарием и меткой \"wontfix\" или \"invalid\". Для объединения - закрыть один Issue с комментарием \"Duplicate of #123\", где #123 - номер основного Issue. GitHub автоматически пометит как дубликат.\n",
171+
"\n",
172+
"## Практические аспекты:\n",
173+
"\n",
174+
"**1. Как использовать шаблоны для создания Issues?**\n",
175+
"\n",
176+
"Ответ: \n",
177+
"\n",
178+
"Создать файлы в папке `.github/ISSUE_TEMPLATE/` репозитория (например, `bug_report.md`, `feature_request.md`). При создании Issue GitHub предложит выбрать шаблон.\n",
179+
"\n",
180+
"**2. Что такое Linked Issues, и как создать связь между задачами?**\n",
181+
"\n",
182+
"Ответ: \n",
183+
"\n",
184+
"Linked Issues - связанные задачи. Связать: в правой панели Issue выбрать \"Development\" -> \"Link issues\" и указать номер связанного Issue. Типы связей: relates to, blocks, blocked by, duplicate.\n",
185+
"\n",
186+
"**3. Какие метрики (например, время выполнения) можно отслеживать с помощью Issues?**\n",
187+
"\n",
188+
"Ответ: \n",
189+
"\n",
190+
"Время от создания до закрытия, количество открытых/закрытых Issues, среднее время решения, распределение по меткам и исполнителям. Используйте GitHub Insights или внешние инструменты (GitHub API, Grafana).\n",
191+
"\n",
192+
"**4. Какие best practices рекомендуются при работе с Issues в команде?**\n",
193+
"\n",
194+
"Ответ: \n",
195+
"\n",
196+
"Использовать понятные заголовки, заполнять шаблоны полностью, регулярно обновлять статус, закрывать решённые Issues, использовать метки единообразно, связывать Issues с PR, вести обсуждения в комментариях, не создавать дубликаты."
197+
]
198+
}
199+
],
200+
"metadata": {
201+
"language_info": {
202+
"name": "python"
203+
}
204+
},
205+
"nbformat": 4,
206+
"nbformat_minor": 5
207+
}

0 commit comments

Comments
 (0)