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

SourceCraft — платформа, с помощью которой вы можете разрабатывать исходный код, управлять версиями, тестировать, собирать, развертывать и сопровождать программные продукты. Сервис представляет собой систему управления репозиториями кода для git с отслеживанием ошибок и пайплайном CI/CD.

Подробнее о работе с git см. на странице Как начать работать с git.

Условия использования сервиса SourceCraft

Для автоматизации работы с сервисом доступны SourceCraft CLI и публичный REST API.

О возможностях SourceCraft для развития опенсорс-проектов см. на странице Опенсорс в SourceCraft.

В SourceCraft реализована безопасная аутентификация изнутри процессов СI/CD в API Yandex Cloud с помощью сервисных подключений.

Организации

Организация — это пространство пользователя в SourceCraft.

При регистрации пользователя в SourceCraft автоматически создается персональная организация и облако в Yandex Cloud. В дальнейшем вы сможете отличить персональную организацию по тексту Personal Organization (SourceCraft) в названии и описанию Created by SourceCraft.

Организации не взаимодействуют друг с другом. Ресурсы одной организации не могут взаимодействовать с ресурсами другой организации.

Организации отличаются настройками приватности:

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

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

Совет

Для группового управления ролями пользователей в организации используйте команды.

Каждой организации в SourceCraft соответствует организация в сервисе Yandex Identity Hub.

Для авторизации корпоративных аккаунтов в SourceCraft с помощью системы единого входа (Single Sign-On, SSO) вы можете использовать SAML-совместимые федерации удостоверений Yandex Cloud.

Подробнее см. на странице Создать организацию в SourceCraft.

Репозитории

Репозиторий — это хранилище, в котором находится весь код проекта и связанная с ним информация. Репозиторий включает в себя следующие элементы:

  • Исходный код — все файлы проекта.

  • Коммиты — записи об изменениях в репозитории с описанием, данными автора и временной меткой.

    Подробнее см. на странице Посмотреть историю коммитов в SourceCraft.

    Совет

    SourceCraft получает имя и почту автора коммита из git. Если почта в настройках git совпадает с почтой пользователя SourceCraft, то такой коммит ассоциируется в репозитории с этим пользователем — в истории коммитов отображаются имя пользователя в SourceCraft, аватар и ссылка на профиль.

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

    Подробнее см. на странице Настроить почту для ассоциации коммитов в SourceCraft.

  • Ветки — независимые линии разработки.

  • Теги — маркировка важных точек в истории проекта.

  • Релизы — зафиксированные версии проекта, включающие определенный набор изменений, тег, описание и дополнительные ресурсы, например бинарные файлы или архивы, предназначенные для пользователей или других разработчиков.

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

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

Подробнее см. на странице Создать репозиторий в SourceCraft.

В SourceCraft вы можете настроить приватность репозитория:

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

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

Репозитории в SourceCraft поддерживают спецификацию Git Large File Storage (LFS) для хранения больших файлов. Рекомендуем использовать LFS для размещения в репозитории объектов размером более 100 МБ.

Подробнее см. на странице Настроить поддержку Git Large File Storage (LFS) в репозиторий SourceCraft.

Репозиторий также можно использовать для хостинга статического сайта с помощью SourceCraft Sites.

Поддерживается отправка на почту уведомлений об активности в репозитории.

Импорт и зеркалирование репозитория из другой системы

Вы можете импортировать или зеркалировать в SourceCraft репозиторий с исходным кодом, размещенный в другой системе управления IT-проектами для git.

Зеркалирование позволяет автоматически синхронизировать содержимое определенных веток исходного репозитория и репозитория в SourceCraft.

Примечание

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

При переносе репозитория с GitHub также импортируются предложения изменений (pull requests), задачи (issues) и комментарии.

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

  • История коммитов.
  • Все существующие ветки.
  • Открытые и закрытые предложения изменений (pull requests).
  • Задачи (issues).
  • Комментарии.
  • Теги.

Важно

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

На зеркалируемые ветки в репозитории SourceCraft накладываются защитные правила политики веток. Их нельзя изменить в SourceCraft, они обновляются только при синхронизации с исходным репозиторием.

Если политика веток будет отключена, или пользователь с ролью Администратор репозитория обойдет ее, то при очередной синхронизации репозиториев история коммитов в SourceCraft будет переписана (force push).

Подробнее см. на странице Импортировать или зеркалировать репозиторий в SourceCraft.

Ответвления (forks)

Ответвления (forks) — это механизм, с помощью которого вы можете создавать собственную изолированную копию другого репозитория. Ответвление включает весь код, историю коммитов и основную ветку или все ветки и теги оригинального репозитория.

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

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

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

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

Примечание

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

CI/CD-процессы в предложении изменений из ветки репозитория-ответвления в ветку репозитория-оригинала могут быть запущены только пользователями с ролью Разработчик репозитория или ролью Ответственный за репозиторий в репозитории-оригинале. Автоматический запуск CI/CD в таких предложениях изменений отключен.

Подробнее см. на странице Работа с ответвлениями (forks) в SourceCraft.

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

Предложение изменений — это запрос на интеграцию правок из одной ветки в другую, обычно в основную ветку проекта. Предложение изменений содержит описание правок, сравнение веток, обсуждение для ревью, а также может интегрироваться с CI/CD-процессами. Это облегчает командную работу и позволяет проверять и утверждать изменения по заданным правилам перед тем, как они будут добавлены в основной проект.

Подробнее см. на странице Предложить изменения в репозитории SourceCraft.

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

Подробнее см. на странице Работа с предложениями изменений в SourceCraft.

Задачи (issues)

Задачи (issues) — это инструмент для отслеживания ошибок, улучшений и запросов на добавление новых возможностей в проекте. В задаче вы можете организовать обсуждение в комментариях, установить статус работы, приоритет и ответственного.

Подробнее см. на странице Создать задачу (issue) в репозитории SourceCraft.

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

Задачи на доске распределены по столбцам и упорядочены по дате создания. Столбцы соответствуют статусам задач:

  • Открыто
  • В процессе
  • На паузе
  • Отклонено
  • Закрыто

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

  • Аватар исполнителя. Чтобы увидеть имя пользователя и перейти на его страницу, наведите указатель на аватар.
  • Значок приоритета задачи. Чтобы увидеть название приоритета, наведите указатель на значок.
  • Номер задачи.
  • Значок для копирования ссылки на задачу — . Чтобы увидеть значок, наведите указатель на карточку.
  • Название задачи.
  • Список меток.
  • Название цели (milestone). Чтобы увидеть сроки и открыть цель, наведите указатель на название цели.

Подробнее см. на странице Работа с доской задач в репозитории SourceCraft.

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

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

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

Совет

Вы можете связывать между собой задачи из разных репозиториев внутри одной организации.

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

Подробнее см. на странице Работа с задачами (issues) в SourceCraft.

Метки (labels)

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

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

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

Поддерживается поиск и фильтрация предложений изменений и задач по меткам.

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

Подробнее см. на странице Работа с метками (labels) в SourceCraft.

Цели (milestones)

Цели (milestones) — это инструмент для планирования и отслеживания ключевых вех в процессе разработки программного обеспечения.

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

Для каждой цели вы можете установить срок выполнения и указать задачи (issues), которые нужно выполнить для достижения цели. К задачам, в свою очередь, вы можете привязать конкретные предложения изменений.

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

Подробнее см. на странице Работа с целями (milestones) в SourceCraft.

Секреты

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

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

Значения секретов можно использовать в CI/CD-процессах репозитория. Для этого в конфигурационном файле .sourcecraft/ci.yaml укажите секрет в формате ${{ secrets.<название_секрета> }}.

Подробнее см. на странице Управлять секретами в репозитории SourceCraft.

Совет

В SourceCraft реализована безопасная аутентификация изнутри процессов СI/CD в API Yandex Cloud с помощью сервисных подключений.

Код

Для полноценной работы с кодом в сервисе реализовано облачное окружение разработчика SourceCraft Spaces на базе Visual Studio Code, доступное через браузер.

Также вы можете отредактировать код с AI-помощником непосредственно в интерфейсе SourceCraft.

Исходные файлы (RAW) репозитория в SourceCraft доступны по прямым ссылкам.

Также в интерфейсе SourceCraft есть возможность копировать и скачивать исходные файлы без необходимости клонирования репозитория.

Навигация и поиск по коду

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

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

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


SourceCraft предлагает следующие функции навигации по коду:

Узнать о доступности навигации можно по индикатору.

Примечание

Вывод структуры файла, поиск деклараций и мест использования элементов поддерживаются для языков программирования C, C++, C#, Go, Java, JavaScript, Kotlin, PHP, Python, TypeScript, языка описания данных Protocol Buffers, а также для конфигурационного файла CI/CD .sourcecraft/ci.yaml.

Подробнее см. на странице Навигация и поиск по коду в SourceCraft.

Использование репозитория в качестве источника пакетов

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

Подробнее см. на странице Использовать репозиторий SourceCraft в качестве источника пакетов для Go.

Пакеты (packages)

В SourceCraft вы можете хранить, распространять и управлять пакетами (packages) программного обеспечения. Это могут быть сторонние библиотеки, зависимости или собственные сборки программ.

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

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

Примечание

Реестры размещаются в сервисе Yandex Cloud Registry. Информацию об уровне нетарифицируемого использования и правилах тарификации см. в документации Cloud Registry.

Поддерживаются следующие типы пакетов:

  • Maven — Java-артефакты.
  • NPM — Node.js-артефакты.
  • NuGet — .NET-артефакты.
  • PyPI — Python-артефакты.
  • Docker — Docker-образы.

Важно

Для создания и добавления реестров, а также подключения реестров к репозиториям требуется роль Администратор организации.

Доступ к чтению пакетов из реестров имеют все пользователи в организации.

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

Реестры, созданные в SourceCraft, также будут отображаться в консоли управления Yandex Cloud.

Примечание

При подключении репозитория к реестру все пользователи, имеющие в репозитории роль Разработчик репозитория, роль Ответственный за репозиторий или роль Администратор репозитория, получают возможность загрузки пакетов в этот реестр.

Подробнее см. в инструкциях Работа с пакетами (packages).

См. также

Проект Яндекса          © 2026 ООО «Яндекс.Облако»