---
metadata:
  - name: generator
    content: Diplodoc Platform v5.54.5
alternate:
  - https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md
  - https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md
  - href: ru/sourcecraft/concepts/index.md
    type: text/markdown
    title: Markdown version
  - href: ../../llms.txt
    type: text/markdown
    title: llms.txt
title: Взаимосвязь ресурсов SourceCraft
description: 'Взаимосвязь ресурсов SourceCraft: руководство по ключевым концепциям платформы для Git, CI/CD и командной разработки.'
---
> **Documentation Index:** Fetch the complete configuration index at https://sourcecraft.dev/portal/docs/ru/llms.txt


# Взаимосвязь ресурсов SourceCraft

<!-- source: ru/_includes/sourcecraft/intro.md -->
_SourceCraft_ — платформа, с помощью которой вы можете разрабатывать исходный код, управлять версиями, тестировать, собирать, развертывать и сопровождать программные продукты. Сервис представляет собой систему управления репозиториями кода для [git](https://git-scm.com/) с отслеживанием ошибок и пайплайном CI/CD.

Подробнее о работе с `git` на странице [Как начать работать с git](https://sourcecraft.dev/portal/docs/ru/sourcecraft/tutorials/quickstart-git.md).
<!-- endsource: ru/_includes/sourcecraft/intro.md -->

<!-- source: ru/_includes/sourcecraft/terms-link.md -->
[Условия использования сервиса SourceCraft](https://yandex.ru/legal/cloud_terms_sourcecraft/ru/)
<!-- endsource: ru/_includes/sourcecraft/terms-link.md -->

Для автоматизации работы с сервисом доступны [SourceCraft CLI](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/cli-quickstart.md) и публичный [REST API](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/api-start.md).

О возможностях SourceCraft для развития опенсорс-проектов на странице [Опенсорс в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/open-source.md).

<!-- source: ru/_includes/sourcecraft/service-connection-note.md -->
В SourceCraft реализована безопасная аутентификация изнутри процессов [CI/CD](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md) в [API](https://yandex.cloud/ru/docs/api-design-guide/concepts/general) Yandex Cloud с помощью [сервисных подключений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/service-connections.md).
<!-- endsource: ru/_includes/sourcecraft/service-connection-note.md -->

## Организации {#org}

<!-- source: ru/_includes/sourcecraft/org-description.md -->
_Организация_ — это пространство пользователя в SourceCraft.

При [регистрации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/registration.md) пользователя в SourceCraft автоматически создается _персональная организация_ и [облако](https://yandex.cloud/ru/docs/resource-manager/concepts/resources-hierarchy#cloud) в Yandex Cloud. В дальнейшем вы сможете отличить персональную организацию по тексту `Personal Organization (SourceCraft)` в названии и описанию `Created by SourceCraft`.

Организации не взаимодействуют друг с другом. Ресурсы одной организации не могут взаимодействовать с ресурсами другой организации.
<!-- endsource: ru/_includes/sourcecraft/org-description.md -->

Организации отличаются настройками приватности:
* **Приватные** — доступ к просмотру и изменению [репозиториев](#repos) будут иметь только [приглашенные](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/invite.md) пользователи. В таких организациях нельзя создавать публичные репозитории.
* **Публичные** — доступ к просмотру публичных репозиториев организации будут иметь все пользователи интернета без аутентификации. Доступ к изменению репозиториев будут иметь только приглашенные пользователи.

<!-- source: ru/_includes/sourcecraft/org-invites-and-yc-connection.md -->
По умолчанию новый участник организации не имеет доступа к репозиториям организации. Права доступа ему необходимо выдать явно: [назначить роль](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/bind.md) непосредственно на репозиторий или целиком на организацию.

<!-- source: ru/_includes/sourcecraft/teams-tip.md -->
{% note tip %}

Для группового управления ролями пользователей в организации используйте [команды](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/teams.md).

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/teams-tip.md -->

Каждой организации в SourceCraft соответствует организация в сервисе [Yandex Identity Hub](https://yandex.cloud/ru/docs/organization/).
<!-- endsource: ru/_includes/sourcecraft/org-invites-and-yc-connection.md -->

<!-- source: ru/_includes/sourcecraft/federations-note.md -->
Для авторизации корпоративных аккаунтов в SourceCraft с помощью системы единого входа (Single Sign-On, SSO) вы можете использовать [SAML-совместимые федерации удостоверений](https://yandex.cloud/ru/docs/organization/concepts/add-federation) Yandex Cloud.
<!-- endsource: ru/_includes/sourcecraft/federations-note.md -->

Подробнее на странице [Создать организацию в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/org-create.md).

## Проекты {#projects}

<!-- source: ru/_includes/sourcecraft/projects-intro.md -->
_Проект_ объединяет несколько [репозиториев](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos) внутри одной [организации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#org). С помощью проектов вы можете логически разделять репозитории, например по продуктам или [командам](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/teams.md), а также назначать пользователям роли сразу для всех входящих в проект репозиториев и [управлять](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md) доступом к ним по общим правилам.
<!-- endsource: ru/_includes/sourcecraft/projects-intro.md -->

<!-- source: ru/_includes/sourcecraft/project-role-note.md -->
[Роли](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-roles), назначенные пользователю в проекте, действуют во всех репозиториях проекта.
<!-- endsource: ru/_includes/sourcecraft/project-role-note.md -->

<!-- source: ru/_includes/sourcecraft/projects-repo-shift.md -->
{% note warning %}

Репозиторий может входить только в один проект.

При переносе в другой проект пользователи могут потерять доступ к репозиторию. Это произойдет, если у них нет нужных [ролей](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-roles) на уровне [организации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#org), [команды](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/teams.md) или самого репозитория.

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/projects-repo-shift.md -->

Подробнее в инструкциях:
* [Работа с проектами в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/project-work.md)
* [Управление ролями пользователей в проекте SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/project-members.md)

## Репозитории {#repos}

<!-- source: ru/_includes/sourcecraft/repo-description.md -->
_Репозиторий_ — это хранилище, в котором находится весь код проекта и связанная с ним информация. Репозиторий включает в себя следующие элементы:
* Исходный код — все файлы проекта.
* <!-- source: ru/_includes/sourcecraft/commit-intro.md -->
  _Коммиты_ — записи об изменениях в репозитории с описанием, данными автора и временной меткой.
  <!-- endsource: ru/_includes/sourcecraft/commit-intro.md --> 

  Подробнее на странице [Посмотреть историю коммитов в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/get-commits.md).

  {% note tip %}

  <!-- source: ru/_includes/sourcecraft/commit-association-intro.md -->
  SourceCraft получает имя и почту автора коммита из `git`. Если почта в настройках `git` совпадает с почтой пользователя SourceCraft, то такой коммит ассоциируется в репозитории с этим пользователем — в истории коммитов отображаются имя пользователя в SourceCraft, аватар и ссылка на профиль.

  Вы можете ассоциировать со своим профилем несколько адресов почты, тогда коммиты, содержащие эти адреса, будут закреплены за вашим профилем.
  <!-- endsource: ru/_includes/sourcecraft/commit-association-intro.md --> 
  
  Подробнее на странице [Настроить почту для ассоциации коммитов в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/commit-association.md).

  {% endnote %}

* _Ветки_ — независимые линии разработки.
* _Теги_ — маркировка важных точек в истории проекта.
* [Релизы](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/releases.md) — зафиксированные версии проекта, включающие определенный набор изменений, тег, описание и дополнительные ресурсы, например бинарные файлы или архивы, предназначенные для пользователей или других разработчиков.

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

Чтобы контролировать процесс внесения изменений, обеспечивать ревью кода, соблюдать правильность именования и условия создания веток и тегов, а также защищать ветки от случайных коммитов или прямого пуша в SourceCraft, предусмотрены [политики веток](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/branch-policies.md).
<!-- endsource: ru/_includes/sourcecraft/repo-description.md -->

Подробнее на странице [Создать репозиторий в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/repo-create.md).

<!-- source: ru/_includes/sourcecraft/custom-repo-templates-intro.md -->
В SourceCraft поддерживаются _пользовательские шаблоны репозиториев_. Вы можете настроить репозиторий-шаблон с исходным кодом, конфигурацией [CI/CD](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md), файлами `README.md` и [AGENTS.md](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/agentsmd.md), [правилами ревью кода](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/code-review.md) и другими файлами проекта, а затем использовать его при создании новых репозиториев.
<!-- endsource: ru/_includes/sourcecraft/custom-repo-templates-intro.md -->

Подробнее на странице [Работа с пользовательскими шаблонами репозиториев в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/custom-repo-templates.md).

Вы можете настроить приватность репозитория: {#repo-visibility}

<!-- source: ru/_includes/sourcecraft/repo-visibility-options.md -->
* **Публичный** — доступ к просмотру репозитория будут иметь все пользователи интернета без аутентификации. Доступ к изменению репозитория будут иметь только приглашенные пользователи.
* **Внутренний** — доступ к просмотру и изменению репозитория будут иметь только пользователи организации, в которой создан репозиторий.
* **Приватный** — доступ к просмотру и изменению репозитория будут иметь только приглашенные пользователи.

В любой момент вы можете [изменить](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/repo-privacy.md) тип доступа к репозиторию.
<!-- endsource: ru/_includes/sourcecraft/repo-visibility-options.md -->

<!-- source: ru/_includes/sourcecraft/lfs-description.md -->
Репозитории в SourceCraft поддерживают спецификацию [Git Large File Storage (LFS)](https://git-lfs.com/) для хранения больших файлов. Рекомендуем использовать LFS для размещения в репозитории объектов размером более 100 МБ.
<!-- endsource: ru/_includes/sourcecraft/lfs-description.md -->

Подробнее на странице [Настроить поддержку Git Large File Storage (LFS) в репозитории SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/lfs.md).

Репозиторий также можно использовать для хостинга статического сайта с помощью [SourceCraft Sites](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/sites.md).

Поддерживается отправка на почту [уведомлений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/repo-notifications.md) об активности в репозитории.

### Импорт и зеркалирование репозитория из другой системы {#repos-import}

<!-- source: ru/_includes/sourcecraft/migration-intro.md -->
Вы можете _импортировать_ или _зеркалировать_ в SourceCraft репозиторий с исходным кодом, размещенный в другой системе управления IT-проектами для [git](https://git-scm.com/).

Зеркалирование позволяет автоматически синхронизировать содержимое определенных веток исходного репозитория и репозитория в SourceCraft. Автоматическая синхронизация выполняется каждые **два часа**. Время последней и предстоящей синхронизаций указывается на обзорной странице репозитория. Также вы можете [запустить](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/migration.md#sync-manually) синхронизацию вручную.

{% note warning %}

Количество зеркалируемых репозиториев [ограничено](https://sourcecraft.dev/portal/docs/ru/sourcecraft/pricing.md#tariff-differences) и зависит от выбранного тарифного плана. Также действуют [лимиты](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/limits.md) на количество синхронизаций за 24 часа.

{% endnote %}

Простой импорт кода (история коммитов, все существующие ветки и теги) поддерживается для любых публичных репозиториев с любых git-хостингов.

При переносе репозитория с [GitHub](https://github.com) также опционально импортируются:
* предложения изменений (pull requests);
* задачи (issues) ;
* комментарии.

<!-- source: ru/_includes/sourcecraft/mirroring-gh-resources-note.md -->
{% note warning %}

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

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/mirroring-gh-resources-note.md -->
<!-- endsource: ru/_includes/sourcecraft/migration-intro.md -->

<!-- source: ru/_includes/sourcecraft/mirroring-restrictions.md -->
На зеркалируемые ветки в репозитории SourceCraft накладываются защитные правила [политики веток](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/branch-policies.md). Их нельзя изменить в SourceCraft, они обновляются только при синхронизации с исходным репозиторием. 

Если политика веток будет отключена, или пользователь с [ролью](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-admin) `Администратор репозитория` обойдет ее, то при очередной синхронизации репозиториев история коммитов в SourceCraft будет переписана (`force push`).
<!-- endsource: ru/_includes/sourcecraft/mirroring-restrictions.md -->

Подробнее на странице [Импортировать, зеркалировать или синхронизировать репозиторий в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/migration.md).

## Ответвления (forks) {#forks}

<!-- source: ru/_includes/sourcecraft/fork-description.md -->
_Ответвления (forks)_ — это механизм, с помощью которого вы можете создавать собственную изолированную копию другого [репозитория](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos). Ответвление включает весь код, историю коммитов и основную ветку или все ветки и теги оригинального репозитория.

Основное предназначение ответвлений — упрощение процесса внесения изменений в чужие проекты, в том числе опенсорс. Вы можете свободно экспериментировать, добавлять новые функции или исправлять ошибки, а затем предлагать свои правки в основной проект с помощью [предложений изменений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#pr).
<!-- endsource: ru/_includes/sourcecraft/fork-description.md -->

Ответвление содержит только объекты, которые были созданы при работе с ним, например коммиты и LFS-объекты, а данные репозитория-оригинала подключаются динамически.

При удалении репозитория-оригинала новым оригиналом становится ответвление, которое было создано первым. Все данные переносятся в это ответвление.

Поддерживаются последовательные цепочки ответвлений глубиной до 10 уровней.

<!-- source: ru/_includes/sourcecraft/fork-access.md -->
{% note info %}

Для создания ответвления требуются права на чтение репозитория-оригинала. Если вы создаете ответвление от ответвления, то у вас должны быть права на чтение для всех репозиториев из цепочки. Подробнее на странице [Управление доступом в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md).

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/fork-access.md -->

<!-- source: ru/_includes/sourcecraft/fork-ci-restriction.md -->
[CI/CD-процессы](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md) в предложении изменений из ветки репозитория-ответвления в ветку репозитория-оригинала могут быть запущены только пользователями с [ролью](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-developer) `Разработчик репозитория` или [ролью](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-maintainer) `Ответственный за репозиторий` в репозитории-оригинале. Автоматический запуск CI/CD в таких предложениях изменений отключен.
<!-- endsource: ru/_includes/sourcecraft/fork-ci-restriction.md -->

Подробнее на странице [Работа с ответвлениями (forks) в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/fork-work.md).

## Предложения изменений (pull requests) {#pr}

<!-- source: ru/_includes/sourcecraft/pr-description.md -->
_Предложение изменений_ — это запрос на интеграцию правок из одной ветки в другую, обычно в основную ветку проекта. Предложение изменений содержит описание правок, сравнение веток, обсуждение для ревью, а также может интегрироваться с [CI/CD-процессами](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md). Это облегчает командную работу и позволяет проверять и утверждать изменения по [заданным правилам](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/code-review.md) перед тем, как они будут добавлены в основной проект.
<!-- endsource: ru/_includes/sourcecraft/pr-description.md -->

Подробнее на странице [Предложить изменения в репозитории SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/pr-create.md).

<!-- source: ru/_includes/sourcecraft/pr-work-in-ui.md -->
Для работы с предложениями изменений в SourceCraft, в том числе для ревью, не требуется специально переходить в IDE на локальном компьютере, все действия можно выполнять в интерфейсе SourceCraft. Доступны [поиск и навигация по коду проекта](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md), а также возможность [редактировать код](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-edit.md).
<!-- endsource: ru/_includes/sourcecraft/pr-work-in-ui.md -->

Подробнее на странице [Работа с предложениями изменений в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/pr-work.md).

## Задачи (issues) {#issues}

<!-- source: ru/_includes/sourcecraft/issue-description.md -->
_Задачи (issues)_ — это инструмент для отслеживания ошибок, улучшений и запросов на добавление новых возможностей в проекте. В задаче вы можете организовать обсуждение в комментариях, установить статус работы, приоритет и ответственного.
<!-- endsource: ru/_includes/sourcecraft/issue-description.md -->

Подробнее на странице [Создать задачу (issue) в репозитории SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/issue-create.md).

Для организации работы с задачами предусмотрены _доски_. На досках вы можете отслеживать прогресс работы и управлять статусами задач.

<!-- source: ru/_includes/sourcecraft/boards-description.md -->
Задачи на доске распределены по столбцам и упорядочены по дате создания. Столбцы соответствуют статусам задач:

* ![image](../../_assets/console-icons/circle.svg) **Открыто**
* ![image](../../_assets/console-icons/circle-play.svg) **В процессе**
* ![image](../../_assets/console-icons/circle-pause.svg) **На паузе**
* ![image](../../_assets/console-icons/circle-xmark.svg) **Отклонено**
* ![image](../../_assets/console-icons/circle-check.svg) **Закрыто**

Карточка задачи содержит:

* Аватар исполнителя. Чтобы увидеть имя пользователя и перейти на его страницу, наведите указатель на аватар.
* Значок приоритета задачи. Чтобы увидеть название приоритета, наведите указатель на значок.
* Номер задачи.
* Значок для копирования ссылки на задачу — ![image](../../_assets/console-icons/link.svg). Чтобы увидеть значок, наведите указатель на карточку.
* Название задачи.
* Список меток.
* Название [цели (milestone)](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#milestones). Чтобы увидеть сроки и открыть цель, наведите указатель на название цели.
<!-- endsource: ru/_includes/sourcecraft/boards-description.md -->

Подробнее на странице [Работа с доской задач в репозитории SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/board-control.md).

<!-- source: ru/_includes/sourcecraft/issue-activity-intro.md -->
С помощью задач можно поддерживать активность пользователей в проекте. Пользователи голосуют за задачу, обсуждают проблему или идею в комментариях, делятся своими предложениями и уточняют детали. 

С помощью реакций, например лайков, дизлайков и других эмодзи, оценивается важность или полезность комментария. Пользователей можно упоминать в сообщении с помощью символа `@`, а ссылки на другие задачи, [цели](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#milestones) и [предложения изменений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#pr) помогают объединять связанные обсуждения и ускоряют совместное решение задач.

В SourceCraft поддерживается обновление страницы с задачей в режиме реального времени. Вам не нужно обновлять страницу вручную, чтобы увидеть новые комментарии, реакции и другие изменения.
<!-- endsource: ru/_includes/sourcecraft/issue-activity-intro.md -->

<!-- source: ru/_includes/sourcecraft/issue-connection.md -->
{% note tip %}

Вы можете связывать между собой задачи из разных [репозиториев](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos) внутри одной [организации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#org). Доступны следующие типы связей: ![image](../../_assets/console-icons/link.svg) **Связанная задача**, ![image](../../_assets/console-icons/circle-arrow-right.svg) **Подзадача**, ![image](../../_assets/console-icons/folder-arrow-up-in.svg) **Родительская задача**, ![image](../../_assets/console-icons/octagon-xmark.svg) **Блокирует задачу**, ![image](../../_assets/console-icons/shuffle.svg) **Блокируется задачей**, ![image](../../_assets/console-icons/copy-transparent.svg) **Дубликат**.

{% endnote %}

В выпадающем списке вы можете выбрать существующую задачу или создать новую, не покидая текущую страницу.
<!-- endsource: ru/_includes/sourcecraft/issue-connection.md -->

<!-- source: ru/_includes/sourcecraft/issue-notifications-intro.md -->
Чтобы узнавать о новых комментариях, реакциях и других событиях, подпишитесь на уведомления о задаче. Уведомления приходят на почту, связанную с вашим аккаунтом.
<!-- endsource: ru/_includes/sourcecraft/issue-notifications-intro.md -->

Подробнее на странице [Работа с задачами (issues) в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/issue-work.md).

## Метки (labels) {#labels}

<!-- source: ru/_includes/sourcecraft/label-description.md -->
Вы можете использовать метки для разделения [предложений изменений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#pr) и [задач](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#issues) на логические группы, например:

* по типу решаемой задачи — `bug`, `feature`, `docs`;
* по включению задачи в определенный спринт или привязке к релизу — `sprint: 2026-01-20 / 2026-02-02`, `release-02-02`;
* по команде — `frontend-team`, `core`.

Для удобства метки можно выделять цветом.

Поддерживается поиск и фильтрация [предложений изменений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/search-repo.md) и [задач](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/search-repo-issue.md) по меткам.

Метки действуют только в том репозитории, в котором были созданы. Добавление, изменение или удаление меток в одном репозитории не влияет на метки в других репозиториях.
<!-- endsource: ru/_includes/sourcecraft/label-description.md -->

Подробнее на странице [Работа с метками (labels) в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/labels-work.md).

## Цели (milestones) {#milestones}

<!-- source: ru/_includes/sourcecraft/milestone-description.md -->
_Цели (milestones)_ — это инструмент для планирования и отслеживания ключевых вех в процессе разработки программного обеспечения. 

Целями могут быть, например, очередной релиз или выпуск значимого обновления.

Для каждой цели вы можете установить срок выполнения и указать [задачи (issues)](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#issues), которые нужно выполнить для достижения цели. К задачам, в свою очередь, вы можете привязать конкретные [предложения изменений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#pr).

Таким образом, с помощью связки из целей, задач и предложений изменений вы можете отслеживать прогресс разработки и контролировать приоритеты.
<!-- endsource: ru/_includes/sourcecraft/milestone-description.md -->

Подробнее на странице [Работа с целями (milestones) в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/milestone-work.md).

## Секреты {#secrets}

<!-- source: ru/_includes/sourcecraft/secrets-description.md -->
С помощью _секретов_ вы можете хранить в репозитории в зашифрованном виде конфиденциальные данные, например пароли, ключи доступа, токены и т. д.

Секрет представляет собой пару «ключ-значение», где ключ — название секрета, а значение — конфиденциальные данные.

Поддерживаются секреты двух типов:
* SourceCraft — обычный секрет типа «ключ-значение», который хранится в самом сервисе.
* Lockbox — ссылка на секрет в [Yandex Lockbox](https://yandex.cloud/ru/docs/lockbox/). Сам секрет хранится в Yandex Cloud, а SourceCraft обращается к нему через [сервисное подключение](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/service-connections.md). При обращении используется последняя актуальная [версия](https://yandex.cloud/ru/docs/lockbox/concepts/secret#version) секрета.
<!-- endsource: ru/_includes/sourcecraft/secrets-description.md -->

<!-- source: ru/_includes/sourcecraft/secrets-in-ci-cd.md -->
Значения секретов можно использовать в [CI/CD-процессах](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md) репозитория. Для этого в конфигурационном файле `.sourcecraft/ci.yaml` укажите секрет в формате `${{ secrets.<название_секрета> }}`.
<!-- endsource: ru/_includes/sourcecraft/secrets-in-ci-cd.md -->

{% note tip %}

<!-- source: ru/_includes/sourcecraft/service-connection-note.md -->
В SourceCraft реализована безопасная аутентификация изнутри процессов [CI/CD](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md) в [API](https://yandex.cloud/ru/docs/api-design-guide/concepts/general) Yandex Cloud с помощью [сервисных подключений](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/service-connections.md).
<!-- endsource: ru/_includes/sourcecraft/service-connection-note.md -->

{% endnote %}

### Интеграция с Yandex Lockbox {#lockbox}

<!-- source: ru/_includes/sourcecraft/lockbox-integration-note.md -->
С помощью интеграции с Yandex Lockbox вы можете:
* хранить секреты в Yandex Cloud, не дублируя их значения в SourceCraft;
* использовать полноценный менеджмент секретов с версионированием и гранулярными правами доступа;
* использовать одни и те же секреты в SourceCraft и в других сервисах Yandex Cloud.
<!-- endsource: ru/_includes/sourcecraft/lockbox-integration-note.md -->

{% cut "Пример использования секрета Yandex Lockbox в CI/CD" %}

<!-- source: ru/_includes/sourcecraft/lockbox-secret-example.md -->
```yaml
workflows:
  test-lockbox-workflow:
    tasks:
      - name: test-lockbox-task
        cubes:
          - name: test-lockbox-task
            script:
              - |
                set -eou pipefail
                echo "Testing lockbox"
                echo ${{ secrets.lockbox-test#BOT_TOKEN }}
```

В примере используется значение ключа `BOT_TOKEN` из секрета Yandex Lockbox `lockbox-test`.
<!-- endsource: ru/_includes/sourcecraft/lockbox-secret-example.md -->

{% endcut %}

Подробнее на страницах:
* [Управлять секретами в репозитории SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/secrets.md)
* [Настроить интеграцию с Yandex Lockbox в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/lockbox-integration.md).

## Код {#code}

<!-- source: ru/_includes/sourcecraft/spaces-tip.md -->
Для полноценной работы с кодом в сервисе реализовано облачное окружение разработчика [SourceCraft Spaces](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/spaces.md) на базе [Visual Studio Code](https://code.visualstudio.com/), доступное через браузер.
<!-- endsource: ru/_includes/sourcecraft/spaces-tip.md -->

Также вы можете [отредактировать код с AI-помощником](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/code-assistant.md#code-edition) непосредственно в интерфейсе SourceCraft.

<!-- source: ru/_includes/sourcecraft/raw-content-intro.md -->
Исходные файлы (RAW) [репозитория](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos) в SourceCraft доступны по [прямым ссылкам](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/raw-content.md#raw). 

Также в интерфейсе SourceCraft есть возможность [копировать](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/raw-content.md#copy) и [скачивать](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/raw-content.md#download) исходные файлы без необходимости [клонирования](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/repo-clone.md) репозитория.
<!-- endsource: ru/_includes/sourcecraft/raw-content-intro.md -->

{% note tip %}

При отображении файлов Markdown в репозитории поддерживается разметка [Yandex Flavored Markdown](https://diplodoc.com/docs/ru/syntax/), а также формулы LaTeX, реализованные через [плагин](https://github.com/diplodoc-platform/latex-extension) платформы Diplodoc на основе библиотеки [KaTeX](https://katex.org/).

{% endnote %}

### Навигация и поиск по коду {#code-navigation}

<!-- source: ru/_includes/sourcecraft/code-navigation-description.md -->
Вы можете легко понимать структуру кода и его зависимости, используя навигацию по коду в SourceCraft. Сервис связывает декларации именованных сущностей с их использованиями: для каждой именованной сущности вы можете посмотреть информацию о том, как она объявлена в коде, и перейти к строке с этим объявлением.

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

Функциональность доступна как в режиме просмотра кода, так и при работе с предложениями изменений.

<iframe width="640" height="360" src="https://runtime.strm.yandex.ru/player/video/vplvlyx6usuy2ivx7kdm?autoplay=0&mute=0" allow="autoplay; fullscreen; picture-in-picture; encrypted-media" frameborder="0" scrolling="no"></iframe>

<br>

#|
||
SourceCraft предлагает следующие функции навигации по коду:
* [Текстовый поиск по коду в репозитории](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#search-code-in-repo).
* [Навигация по структуре файла](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#get-structure).
* [Просмотр информации о декларации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#declaration-info).
* [Переход на декларацию из использования](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#search-by-declaration).
* [Поиск использований](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#search-by-usage).
||
|#

Узнать о доступности навигации можно по [индикатору](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md#indicator).
<!-- endsource: ru/_includes/sourcecraft/code-navigation-description.md -->

<!-- source: ru/_includes/sourcecraft/code-navigation-supported-syntax.md -->
{% note info %}

Вывод структуры файла, поиск деклараций и мест использования элементов поддерживаются для языков программирования C, C++, C#, Go, Java, JavaScript, Kotlin, PHP, Python, TypeScript, языка описания данных Protocol Buffers, а также для [конфигурационного файла CI/CD](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md#ci-cd-configuration) `.sourcecraft/ci.yaml`.

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/code-navigation-supported-syntax.md -->

Подробнее на странице [Навигация и поиск по коду в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/code-navigation.md).

### Использование репозитория в качестве источника пакетов {#go-get}

<!-- source: ru/_includes/sourcecraft/go-get-description.md -->
В SourceCraft вы можете использовать публичные [репозитории](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos) в публичных [организациях](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#org) в качестве источника пакетов для проектов на языке [Go](https://go.dev/).
<!-- endsource: ru/_includes/sourcecraft/go-get-description.md -->

Подробнее на странице [Использовать репозиторий SourceCraft в качестве источника пакетов для Go](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/go-get.md).

## Пакеты (packages) {#packages}

<!-- source: ru/_includes/sourcecraft/packages-intro.md -->
В SourceCraft вы можете хранить, распространять и управлять _пакетами (packages)_ программного обеспечения. Это могут быть сторонние библиотеки, зависимости или собственные сборки программ. 

С помощью пакетов разработчики могут легко делиться результатами сборки, переиспользовать код и внедрять его в свои проекты.

Пакеты хранятся в _реестрах (registries)_ — хранилищах, куда пакеты публикуются и откуда их могут скачивать другие участники или автоматизированные системы. Реестр обеспечивает управление версиями, контроль доступа, аудит и связывает процессы публикации и внедрения пакетов в системе управления исходным кодом.

{% note info %}

Реестры размещаются в сервисе [Yandex Cloud Registry](https://yandex.cloud/ru/docs/cloud-registry/). Информацию об уровне нетарифицируемого использования и правилах тарификации смотрите в [документации Cloud Registry](https://yandex.cloud/ru/docs/cloud-registry/pricing).

{% endnote %}

Поддерживаются следующие типы пакетов:
* Maven — Java-артефакты.
* NPM — Node.js-артефакты.
* NuGet — .NET-артефакты.
* PyPI — Python-артефакты.
* Docker — Docker-образы.
<!-- endsource: ru/_includes/sourcecraft/packages-intro.md -->

<!-- source: ru/_includes/sourcecraft/registry-role.md -->
{% note warning %}

Для создания и добавления реестров, а также подключения реестров к репозиториям требуется [роль](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#organization-manager-admin) `Администратор организации`.

{% endnote %}

Доступ к чтению пакетов из реестров имеют все пользователи в организации.
<!-- endsource: ru/_includes/sourcecraft/registry-role.md -->

<!-- source: ru/_includes/sourcecraft/registry-exist.md -->
Поддерживается подключение локальных реестров [Yandex Cloud Registry](https://yandex.cloud/ru/docs/cloud-registry/), размещенных в той же [организации](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#org).
<!-- endsource: ru/_includes/sourcecraft/registry-exist.md -->

<!-- source: ru/_includes/sourcecraft/registry-cloud.md -->
Реестры, созданные в SourceCraft, также будут отображаться в [консоли управления](https://console.yandex.cloud) Yandex Cloud.
<!-- endsource: ru/_includes/sourcecraft/registry-cloud.md -->

<!-- source: ru/_includes/sourcecraft/registry-repo-access.md -->
{% note info %}

При подключении [репозитория](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/index.md#repos) к реестру все пользователи, имеющие в репозитории [роль](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-developer) `Разработчик репозитория`, [роль](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-maintainer) `Ответственный за репозиторий` или [роль](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/index.md#src-repositories-admin) `Администратор репозитория`, получают возможность загрузки пакетов в этот реестр.

{% endnote %}
<!-- endsource: ru/_includes/sourcecraft/registry-repo-access.md -->

Подробнее в инструкциях [Работа с пакетами  (packages)](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/index.md#packages).

## Интеграция с Яндекс Трекером {#tracker-integration}

В SourceCraft доступна интеграция с Трекером. Она позволяет связывать [предложения изменений](#pr) с задачами Трекера, отслеживать в нем статус связанных предложений изменений и, наоборот, видеть в репозитории связанные задачи.

Подробнее на странице [Интеграция SourceCraft с Яндекс Трекером](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/tracker-integration.md).

#### Полезные ссылки {#see-also}

* [Как начать работать с SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/quickstart.md)
* [Непрерывная интеграция и непрерывное развертывание в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/ci-cd.md)
* [Правила ревью кода в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/code-review.md)
* [Политики веток в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/concepts/branch-policies.md)
* [Работа с REST API SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/api-start.md)
* [Безопасность в SourceCraft](https://sourcecraft.dev/portal/docs/ru/sourcecraft/security/security-overview.md)

<!-- source: ru/_includes/sourcecraft/yandex-project.md -->
_[Проект Яндекса](https://yandex.ru/all)          © 2026 ООО «Яндекс.Облако»_
<!-- endsource: ru/_includes/sourcecraft/yandex-project.md -->
