# Настройка уведомлений в GitHub Teams

Настройте GitHub уведомления для управления работой в Teams.

Вы можете настроить уведомления, подписавшись на активность, релевантную вашему каналу Microsoft Teams, и отписавшись от активности, которая менее полезна для вашего проекта.

### Уведомления включены по умолчанию

Следующие уведомления по умолчанию включены, но вы можете отключить любое из них с помощью команды `@GitHub unsubscribe OWNER/REPO [FEATURE]`.

| Функция       | Описание                                                        |
| ------------- | --------------------------------------------------------------- |
| `issues`      | Открытые, закрытые или повторно открытые выпуски.               |
| `pulls`       | Новые, объединённые, закрытые или вновь открытые pull requests. |
| `commits`     | Новые коммиты на стандартной ветке (обычно `main`).             |
| `comments`    | Новые комментарии к проблемам и запросам на вытягивание.        |
| `deployments` | Обновления статуса развертывания.                               |
| `releases`    | Новые релизы и предварительные публикации.                      |

> \[!NOTE]
> Уведомления репозитория также включены по умолчанию. Вы будете уведомлены, когда ваш репозиторий станет публичным или удалится. Это уведомление нельзя отключить, так как обновления репозитория являются разрушительной деятельностью.

### Уведомления отключены по умолчанию

Следующие уведомления по умолчанию отключены, но вы можете включить любое из них с помощью команды `@GitHub subscribe owner/repo [FEATURE]`.

| Функция                                                                   | Описание                                                        |
| ------------------------------------------------------------------------- | --------------------------------------------------------------- |
| `reviews`                                                                 | Отзывы о пулл-реквестах.                                        |
| `workflows`                                                               |                                                                 |
| GitHub Actions Рабочие процессы выполняются и уведомления об утверждении. |                                                                 |
| `branches`                                                                | Создание и удаление ветки.                                      |
| `discussions`                                                             | Обсуждения созданы или на них даны ответы.                      |
| `+label:"YOUR-LABEL"`                                                     | Фильтруйте проблемы, pull requests и комментарии по их ярлыкам. |

Вы можете подписаться или отменить подписку сразу в нескольких настройках. Рассмотрим пример.

* Чтобы включить активность для отзывов и комментариев по pull request, используйте `@GitHub subscribe OWNER/REPO reviews comments`.
* Чтобы отключить активность по проблемам и pull requests, используйте `@GitHub unsubscribe OWNER/REPO issues pulls`.

## Фильтрация уведомлений

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

### Фильтры ветвей для уведомлений о фиксациях

Фильтры ветвей позволяют фильтровать уведомления о фиксациях на основе имен ветвей. По умолчанию при подписке на `commits` событие вы будете получать уведомления для вашей ветки по умолчанию. Тем не менее, вы можете выбрать фильтрацию по определенной ветви, шаблону ветвей или всем ветвям.

| Пример конфигурации                              | Описание                                                                      |
| ------------------------------------------------ | ----------------------------------------------------------------------------- |
| `@GitHub subscribe OWNER/REPO commits`           | Получение уведомлений о фиксациях для ветки по умолчанию.                     |
| `@GitHub subscribe OWNER/REPO commits:main`      | Получать уведомления о фиксациях `main` только для ветки.                     |
| `@GitHub subscribe OWNER/REPO commits:feature/*` | Получение уведомлений о фиксациях для всех ветвей, начинающихся с `feature/`. |
| `@GitHub subscribe OWNER/REPO commits:*`         | Получайте уведомления о коммитах для всех ветвей.                             |

Вы можете отписаться от функции коммитов с помощью `@GitHub unsubscribe OWNER/REPO commits`.

> \[!NOTE] Возможно, вы ранее использовали фильтр `commits:all` для получения уведомлений о фиксациях для всех ветвей. Этот фильтр является Закрытие. Чтобы получать уведомления о коммитах для всех ветвей, используйте фильтр.`commits:*` Если вы ранее настроили фильтр, `commits:all` он будет продолжать работать до тех пор, пока вы не обновите конфигурацию для использования фильтра `commits:*` .

### Фильтры меток для уведомлений о проблемах и запросах на вытягивание

Фильтры меток позволяют фильтровать уведомления на основе меток, примененных к проблемам и запросам на вытягивание. Если настроен фильтр меток, будут отправляться только уведомления о событиях, содержащих указанную метку. Дополнительные сведения о метках см. [в разделах AUTOTITLE](/ru/issues/using-labels-and-milestones-to-track-work/managing-labels) и [AUTOTITLE.](/ru/issues/tracking-your-work-with-issues/using-issues/filtering-and-searching-issues-and-pull-requests)

В настоящее время можно иметь только один обязательный фильтр меток для каждого репозитория. В таблице ниже показано, на какие типы событий влияют фильтры меток.

| Тип события        | Фильтруется по метке                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Запросы на слияние | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                            |
| Проблемы           | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                            |
| Comments           | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                            |
| Reviews            | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                            |
| Коммиты/отправки   | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not included" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Филиалы            | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not included" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |

#### Создание фильтров меток

Чтобы создать фильтр меток, используйте следующий формат команды:

```text copy
@GitHub subscribe [OWNER/REPO] +label:"YOUR-LABEL"
```

При этом создается фильтр обязательных меток со значением `YOUR-LABEL`. Входящие события, поддерживающие фильтры, отбрасываются до тех пор, пока они не имеют этой метки.

#### Обновление фильтров меток

Вы можете обновить существующий фильтр меток, указав значение NEW-LABEL:

```text copy
@GitHub subscribe [OWNER/REPO] +label:"NEW-LABEL"
```

При этом фильтр "YOUR-LABEL" заменится фильтром NEW-LABEL.

#### Удаление фильтров этикеток

Вы можете удалить существующий фильтр меток с помощью команды unsubscribe с опцией `+label` :

```text copy
@GitHub unsubscribe [OWNER/REPO] +label:"NEW-LABEL"
```

Это приведет к удалению фильтра NEW-LABEL, а канал получит все уведомления о подписанных событиях без фильтрации меток.

#### Просмотр фильтров активных меток

Чтобы просмотреть активные в данный момент фильтры меток для канала, используйте следующую команду:

```text copy
@GitHub subscribe list features
```

#### Допустимые фильтры

Приложение GitHub в Teams поддерживает наиболее распространенные специальные символы для фильтров меток, включая все эмодзи, предоставляемые Teams в GitHub качестве стандартных. В редких случаях можно встретить метку, содержащую специальный символ, который не поддерживается. Например, любой многобайтовый символ, не закодированный как `:foo:`, или метки, использующие этот `,` символ, могут не работать должным образом.

## GitHub Actions Уведомления рабочих процессов

Вы можете подписаться на GitHub Actions уведомления о выполнении рабочего процесса из канала или личного приложения с помощью функции "рабочие процессы" с помощью формата `@GitHub subscribe OWNER/REPO workflows`.

Если вы подписаны на «рабочие процессы», вам доступны следующие функциональные возможности:

* Вы получите уведомление, когда будет запущен новый запуск рабочего процесса.
* Вы можете отслеживать уведомления об одобрении как ответ в теме и одобрять уведомления напрямую из канала или личного приложения.
* После завершения рабочего процесса вы получите обновление в виде ответа в теме, чтобы увидеть полный контекст и историю запуска рабочего процесса.
* Если что-то не помогло, вы можете повторно запустить рабочий процесс на месте, а также включить журналы отладки, если это необходимо.

> \[!NOTE] После 10 марта 2025 г. и для GitHub Enterprise Server версии 3.17 вы больше не будете получать уведомления о ходе выполнения отдельных заданий рабочих процессов. Дополнительные сведения см. в [журналеGitHub изменений](https://github.blog/changelog/2025-02-03-deprecation-of-real-time-github-actions-workflow-job-events-in-slack-and-microsoft-teams-apps/).

### Фильтры уведомлений о рабочем процессе

Уведомления о рабочем процессе можно фильтровать с помощью следующих параметров:

| Фильтр   | Описание                                                                                                                                                                                 |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`   | Фильтрация по названию рабочего процесса.                                                                                                                                                |
| `actor`  | Фильтрация по пользователю, который запустил рабочий процесс.                                                                                                                            |
| `branch` | Фильтрация по ветке, на которой выполняется рабочий процесс. В случаях, когда событие включено `pull_request` , ветвь будет целевой ветвью, для которой создается запрос на вытягивание. |
| `event`  | Фильтрация по событию, которое запустило рабочий процесс (например, push, pull\_request).                                                                                                |

Вы можете настроить фильтры уведомлений рабочего процесса в следующем формате:

```text copy
@GitHub subscribe OWNER/REPO workflows:{name:"YOUR-WORKFLOW-NAME" event:"WORKFLOW-EVENT" branch:"BRANCH-NAME" actor:"USERNAME"}
```

Вы также можете передать несколько значений для каждого фильтра, разделенных запятыми. Рассмотрим пример.

```text copy
@GitHub subscribe OWNER/REPO workflows:{name:"YOUR-WORKFLOW-NAME","ANOTHER-WORKFLOW-NAME" event:"WORKFLOW-EVENT","ANOTHER-WORKFLOW-EVENT" branch:"BRANCH-NAME","ANOTHER-BRANCH-NAME" actor:"USERNAME","ANOTHER-USERNAME"}
```

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

Вы можете отписаться от уведомлений о рабочем процессе с помощью команды: `@GitHub unsubscribe OWNER/REPO workflows`.

> \[!NOTE] Чтобы получать GitHub Actions уведомления в Teams, приложению GitHub требуются дополнительные разрешения. При первой попытке подписаться на рабочие процессы вам будет предложено предоставить эти разрешения.

## Уведомления о развертывании

Вы также можете настроить отдельные уведомления о развертывании. Эти развертывания могут происходить из внешних источников или из GitHub Actions них с помощью API развертываний. См [. раздел AUTOTITLE](/ru/rest/deployments/deployments).

Вы можете подписаться или отписаться от уведомлений о развертывании, используя следующие команды:

```text copy
@GitHub subscribe OWNER/REPO deployments
@GitHub unsubscribe OWNER/REPO deployments
```

> \[!NOTE] Если вы используете GitHub Actions и хотите отслеживать развертывания в средах, рекомендуется использовать эту функцию, `workflows` так как она предоставляет более полную картину и возможность утверждать развертывания непосредственно из Teams.