Если ваша креативная команда хоть раз теряла финальную версию сценария среди десятков копий в Google Docs («Сценарий_ФИНАЛ_3_правки_Оля.docx»), пыталась найти согласованный текст в переписках Telegram или узнавала о том, что продюсер утвердил уже устаревшую версию хука — перед вами пошаговое руководство, которое превратит хаос в систему.

GitHub ассоциируется исключительно с программистами, однако его архитектура идеально подходит для любой текстовой работы, где важны история изменений, процесс согласования и командное взаимодействие. Мы превратим GitHub в мощную систему управления конвейером Reels и Shorts, где каждый сценарий — код, а выпуск ролика — релиз.

Эта инструкция написана с расчетом на людей без технического опыта. Каждый шаг расписан до уровня «куда навести курсор и что нажать». Даже если вы впервые слышите слово «Git», к концу текста у вас будет работающая система.

0
потерянных идей и случайно удаленных абзацев
100%
контроль версий — видно, кто, когда и зачем внес правку
1 клик
для одобрения сценария продюсером через Pull Request
бесконечная масштабируемость редакции без хаоса

Часть 1. Зачем менять Google Docs на GitHub

Стандартные текстовые редакторы хороши для написания, но ужасны для администрирования потокового контента. Когда вы выпускаете по 10-15 коротких роликов в неделю, нужна система статусов, защита от случайных изменений и четкий процесс утверждения. Рассмотрим две реальности.

Хаос облачных документов

Правки вносятся поверх старого текста, комментарии теряются после принятия. Непонятно, на каком этапе находится сценарий: это черновик, он на проверке или уже снят? Нет единого реестра идей, которые не пошли в работу.

Представьте: монтажер открывает Google Docs, а там три версии сценария. Две — вчерашние. Одна — сегодняшняя, но без пометки «утверждена». Он берет не ту версию. Ролик уходит в публикацию с устаревшим хуком. Обнаруживается это только после выхода.

Структура Git-репозитория

Каждый сценарий пишется в изолированной «ветке». Продюсер проверяет его через интерфейс сравнения (было/стало). После одобрения сценарий вливается в «главную» базу. Ни одна строчка текста не пропадает.

В главной ветке лежат только утвержденные сценарии. Монтажер открывает папку Approved_Scripts и видит единственную версию каждого текста — ту самую, на которую продюсер нажал кнопку «одобрить». Перепутать невозможно.

«Относитесь к сценариям как к исходному коду вашего медиа-продукта. Сценарист пишет код, продюсер проводит код-ревью, оператор исполняет (компилирует) его, а публикация — деплой на продакшн.» — Базовый принцип контент-инжиниринга
Типичная ситуация без системы

Понедельник, 14:00. Продюсер пишет в общий чат: «Где финальный сценарий про налоги? Мы снимаем через час». Сценарист присылает файл. Продюсер открывает и видит старую версию хука. Сценарист говорит: «Ой, я отправил не тот. Сейчас перешлю». Проходит 10 минут. Новый файл приходит. Продюсер открывает — хук обновлен, но концовка старая. Оператор уже выставил свет. Съемка задерживается на 30 минут.

С GitHub такая ситуация физически невозможна. Утвержденный текст лежит в одном месте, он один, он актуальный. Точка.

Часть 2. Базовые понятия — словарь вашей редакции

Прежде чем строить архитектуру, переведем IT-термины на язык видеопродакшена. Запомните шесть слов — весь дальнейший текст построен на них.

🗂
Repository (Репозиторий)
Ваш главный проект. Общая папка, где хранятся все сценарии, идеи и референсы. Единая база знаний канала. Представьте гигантский сейф, в который складываются все тексты, когда-либо написанные для канала.
🌿
Branch (Ветка)
Черновик, который живет отдельно от утвержденных текстов. Рабочая копия проекта, в которой сценарист пишет новый рилс, не трогая утвержденные тексты. Когда черновик готов, его «вливают» обратно в основной проект.
💾
Commit (Коммит)
Контрольная точка сохранения. Как «быстрое сохранение» в видеоигре. Каждый коммит фиксирует, что именно изменилось, кто это сделал и когда. Можно откатиться к любой предыдущей точке.
🤝
Pull Request (PR)
Запрос на проверку. Сценарист отправляет готовую ветку продюсеру с сообщением: «Я закончил, проверь и утверди в съемку». Продюсер видит все изменения, может комментировать конкретные строки.
Merge (Слияние)
Момент, когда проверенный сценарий из ветки-черновика переезжает в главную ветку. После слияния текст получает статус «утвержден». Только продюсер может нажать эту кнопку.
📋
Issue (Задача)
Карточка идеи. Тикет, в котором описывается концепция будущего ролика. К задаче можно прикрепить ярлыки (статусы), назначить исполнителя и вести обсуждение.
Аналогия для команды Объясните команде так: «Репозиторий — офис. Главная ветка (main) — шкаф с подписанными папками, где лежит всё утвержденное. Ветка — ваш рабочий стол, на котором вы пишете. Коммит — штамп "сохранено" с датой. Pull Request — вы приносите черновик продюсеру и кладете ему на стол. Merge — продюсер подписывает черновик и убирает его в шкаф.»

Часть 3. Подготовка — что нужно до начала работы

3.1. Что потребуется от каждого участника

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

  • Компьютер или ноутбук с доступом в интернет (телефон — для чтения, но не для работы).
  • Браузер Chrome, Firefox или Safari последней версии.
  • Адрес электронной почты для регистрации в GitHub.
  • 15 минут на первоначальную настройку.
⚠️ Телефон — только для чтения Мобильное приложение GitHub удобно, чтобы прочитать уведомление о новом Pull Request или глянуть текст. Однако писать и редактировать сценарии с телефона — медленно и неудобно. Договоритесь с командой: черновики пишутся только с компьютера.

3.2. Регистрация в GitHub — пошагово

Каждый участник команды должен создать свой личный аккаунт. Один аккаунт на двоих использовать нельзя — тогда теряется главное преимущество: понимание того, кто именно внес правку.

Откройте сайт github.com — в адресной строке браузера введите github.com и нажмите Enter. Вы увидите главную страницу с кнопкой «Sign up» (Зарегистрироваться) в правом верхнем углу.
Нажмите «Sign up» — откроется пошаговая форма регистрации. GitHub будет задавать вопросы по одному.
Введите email — используйте рабочую почту (например, ivan@vashakompaniya.ru). Если рабочей нет — личную Gmail-почту. Нажмите «Continue».
Придумайте пароль — GitHub потребует минимум 8 символов. Рекомендую использовать генератор паролей или фразу из 3-4 слов с цифрой, например: Reels2026Konveyer!. Нажмите «Continue».
Выберите имя пользователя (username) — это публичное имя, которое будет видно всей команде. Рекомендую формат: name-kompaniya или просто imya-familiya. Например, ivan-petrov или oleg-reel-team. Нажмите «Continue».
Пройдите капчу — GitHub покажет головоломку (выберите картинки или решите задачу). Это защита от роботов. Решите её и нажмите «Create account».
Подтвердите email — откройте свою почту. От GitHub придет письмо с кодом из 6 цифр. Скопируйте код и вставьте его на странице GitHub. Аккаунт активирован.
Пропустите анкету — GitHub предложит ответить на вопросы «Чем вы занимаетесь?». Все они необязательны. Нажмите «Skip this step» внизу страницы, чтобы сразу попасть в рабочий интерфейс.
✅ Результат У вас есть личный аккаунт на GitHub. Вы видите приборную панель (Dashboard). Попросите каждого участника команды повторить эти шаги и прислать вам свое имя пользователя (username) — оно понадобится на следующем этапе.

3.3. Создание организации (необязательно, но рекомендуется)

Если в команде больше двух человек, удобнее создать «Организацию» (Organization) — общее рабочее пространство, к которому привязывается репозиторий. Организация позволяет управлять доступами из одного места и не привязывать проект к личному аккаунту одного человека.

Нажмите на аватар в правом верхнем углу GitHub → в выпадающем меню выберите «Your organizations».
Нажмите «New organization» — откроется выбор тарифа. Выберите «Free» (бесплатный). Для нашей задачи хватит с запасом. Нажмите «Create a free organization».
Введите название — например, vashe-media или reel-team-2026. Название будет частью адреса: github.com/vashe-media. Контактный email — ваш рабочий.
Подтвердите, что вы не робот, и нажмите «Next». На следующей странице GitHub предложит пригласить участников — пока пропустите, нажав «Complete setup».
Когда организация не нужна

Если вы работаете один или вдвоем (автор + продюсер), можно обойтись без организации. Создайте репозиторий прямо в личном аккаунте и добавьте второго участника как коллаборатора. Организация нужна, когда участников трое и больше, или когда вы планируете вести несколько каналов с разными репозиториями.

Часть 4. Создание репозитория — ваша база сценариев

Репозиторий — сердце системы. Сюда попадают все сценарии, идеи, шаблоны и референсы. Создаем его один раз и пользуемся постоянно.

Перейдите на главную GitHub — нажмите на логотип GitHub (кошка) в верхнем левом углу. Вы окажетесь на Dashboard.
Нажмите зеленую кнопку «New» слева на Dashboard (или нажмите «+» в верхнем правом углу → «New repository»).
Выберите владельца (Owner) — если создали организацию, выберите её из выпадающего списка. Если нет — оставьте свой личный аккаунт.
Введите название — рекомендую формат: reels-production-2026. Правила: только латиница, дефисы вместо пробелов, без кириллицы. Плохие примеры: сценарии рилсов, reels scripts new FINAL. Хорошие: content-scripts, reels-production-2026, shorts-team.
Добавьте описание (Description) — коротко на русском: «База сценариев для рилсов и шортсов. Канал: @ваш_канал». Описание видно только участникам.
Выберите «Private» — обязательно. Приватный репозиторий виден только приглашенным участникам. Публичный (Public) показывает ваши сценарии всему интернету. Вам нужен Private.
Поставьте галочку «Add a README file» — GitHub создаст файл-приветствие, в котором можно описать правила работы для команды.
Нажмите «Create repository» — зеленая кнопка внизу. Репозиторий создан. Вы видите страницу проекта с одним файлом — README.md.
🚨 Критически важно: не выбирайте Public Публичный репозиторий индексируется поисковиками. Ваши сценарии, идеи и стратегия контента окажутся в открытом доступе. Всегда выбирайте Private. Проверьте это прямо сейчас: откройте Settings (настройки) репозитория → раздел «Danger Zone» внизу → убедитесь, что стоит метка «This repository is private».

Часть 5. Архитектура репозитория — как разложить файлы

Сценарии мы пишем в формате Markdown (файлы с расширением .md). Markdown — простой текстовый формат, который GitHub красиво отображает: поддерживает заголовки, списки, выделение жирным и вставку ссылок. Учить его — 5 минут (раздел ниже).

5.1. Создание структуры папок

В главной ветке main должны лежать четыре папки-этапа. Они отражают жизненный цикл каждого ролика:

01_Ideas
Сырые наброски и заметки Здесь хранятся файлы с идеями, которые пока не взяты в работу. Формат свободный: один файл — одна идея. Даже если идея — одно предложение, она заслуживает своего файла. Так ничего не теряется.
02_Approved
Утвержденные сценарии, готовые к съемке Сюда файл попадает только после прохождения Pull Request и нажатия кнопки Merge продюсером. Монтажер и оператор заходят именно в эту папку, чтобы забрать текст.
03_Production
Материалы в работе (съемка / монтаж) Сценарий перемещается сюда, когда начинается съемка. Здесь же можно хранить ссылки на исходники видео, таймкоды монтажа и заметки оператора.
04_Published
Архив опубликованных роликов Снято, смонтировано, опубликовано. Файл переезжает сюда с дополнительной информацией: дата публикации, ссылка на ролик, статистика за первые 24 часа (можно дописать позже).

5.2. Как создать папку в GitHub (пошагово)

GitHub не позволяет создать пустую папку — нужно сразу положить в неё файл. Используем трюк: создаем файл-заглушку .gitkeep внутри каждой папки.

Откройте репозиторий — перейдите на его главную страницу. Вы видите файл README.md.
Нажмите «Add file» → «Create new file» — откроется редактор.
В поле «Name your file...» введите: 01_Ideas/.gitkeep — GitHub автоматически поймет, что 01_Ideas — папка, а .gitkeep — файл внутри неё. Слеш (/) — разделитель.
Содержимое файла оставьте пустым — файл .gitkeep служит только для того, чтобы папка существовала. Он не несет информации.
Прокрутите вниз до «Commit changes» — в поле «Commit message» напишите: Создана папка 01_Ideas. Выберите «Commit directly to the main branch» (сохранить сразу в главную ветку). Нажмите зеленую кнопку «Commit changes».
Повторите для остальных папок — создайте файлы 02_Approved_Scripts/.gitkeep, 03_Production/.gitkeep и 04_Archive_Published/.gitkeep тем же способом.
✅ Результат Вернитесь на главную страницу репозитория. Вы увидите четыре папки, файл README.md и историю из четырех коммитов (по одному на каждую папку). Скелет системы готов.

5.3. Настройка файла README.md

Файл README.md — первое, что видит любой участник, открывая репозиторий. Используйте его как «памятку для команды»: краткие правила, ссылки на шаблоны и контакты ответственных.

Нажмите на файл README.md в списке файлов репозитория. Откроется его содержимое.
Нажмите иконку карандаша (Edit) — она справа от названия файла. Откроется редактор.
Замените содержимое на правила вашей редакции (пример ниже). Нажмите «Commit changes», опишите изменение: Добавлены правила редакции.

Вот шаблон, который можно скопировать и адаптировать:

# 📹 Reels Production 2026

## Правила работы
1. Пишем сценарии ТОЛЬКО в формате Markdown (.md)
2. Один файл = один ролик
3. Имя файла: `YYYY-MM-DD_короткое-название.md`
   Пример: `2026-04-15_nalogi-ip.md`
4. Черновики пишем в ВЕТКАХ, а не в main
5. Готовый текст сдаем через Pull Request

## Структура папок
- `01_Ideas/` — сырые идеи
- `02_Approved_Scripts/` — утверждено, готово к съемке
- `03_Production/` — в съемке / монтаже
- `04_Archive_Published/` — опубликовано

## Контакты
- Продюсер: @username-produsera
- Главный сценарист: @username-scenarista

## Полезные ссылки
- [Шаблон сценария](ссылка)
- [Канбан-доска](ссылка на GitHub Projects)

Часть 6. Markdown за 5 минут — формат ваших сценариев

Markdown — текстовый формат с простейшей разметкой. Вы пишете обычный текст и добавляете символы (#, **, -), чтобы обозначить заголовки, выделение и списки. GitHub преобразует это в красивый, читаемый документ.

6.1. Минимальный набор для сценариста

# Заголовок первого уровня  (название ролика)
## Заголовок второго уровня (раздел: Хук, Тело, CTA)
### Заголовок третьего уровня (подраздел)

Обычный текст — просто пишите.

**Жирный текст** — для акцентов и ремарок.
*Курсив* — для пояснений оператору.

- Пункт списка
- Еще пункт
- И ещё

> Цитата — для вставки реплик или закадрового текста

`Код или техническая пометка` — для таймкодов

---  (горизонтальная линия — разделитель между блоками)

6.2. Шаблон сценария рилса

Вот готовый шаблон, который каждый сценарист копирует при создании нового файла:

# Название: [Тема ролика]

**Дата создания:** YYYY-MM-DD
**Автор:** @username
**Хронометраж:** __ сек.
**Формат:** Говорящая голова / Текст на экране / Закадр / Скетч
**Канал:** Instagram / TikTok / YouTube Shorts
**Ссылка на Issue:** #номер_задачи

---

## ХУК (0-3 сек)

> (Ремарка: эмоция, жест, визуал)

Текст хука: ...

---

## ТЕЛО (3-__ сек)

> (Ремарка: план — крупный/средний, переход)

Текст основной части: ...

**Визуальная вставка:** описание картинки/графики на экране.

---

## CALL TO ACTION (__-__ сек)

> (Ремарка: энергия, направление взгляда)

Текст CTA: ...

---

## МЕТА-ИНФОРМАЦИЯ (для СММ)

**Caption (описание):**
...

**Хэштеги:**
#тег1 #тег2 #тег3

**Музыка / Звук:**
Название трека или ссылка
Зачем такой подробный шаблон? Оператор видит ремарки и понимает, какой план нужен. СММ-менеджер берет готовые caption и хэштеги прямо из файла. Монтажер знает, где нужна графическая вставка. Один файл заменяет пять сообщений в чате.

Часть 7. Рабочий процесс — жизнь одного сценария от идеи до публикации

Теперь самое главное — пошаговый маршрут, по которому проходит каждый сценарий. Разберем семь стадий, каждую — с описанием конкретных действий в интерфейсе GitHub.

Стадия 1. Рождение идеи — создание Issue

Всё начинается с задачи (Issue). Продюсер или автор фиксирует идею будущего ролика. Задача — точка входа в систему. Идея, которая не оформлена как Issue, для конвейера не существует.

Откройте вкладку «Issues» — на странице репозитория нажмите вкладку «Issues» в верхнем меню (между «Code» и «Pull requests»).
Нажмите «New issue» — зеленая кнопка справа.
Заполните заголовок — кратко и информативно. Примеры: «Рилс: 5 ошибок ИП на упрощенке», «Шортс: как работает кэшбэк по-честному», «Рилс: утренняя рутина предпринимателя».
Заполните тело задачи — опишите концепцию. Укажите: боль аудитории, основной месседж, формат (говорящая голова, скетч, текстовый), хронометраж, референсы (ссылки на чужие ролики, которые нравятся). Чем подробнее — тем меньше переделок потом.
Назначьте исполнителя (Assignees) — справа на странице задачи найдите раздел «Assignees» → нажмите «assign yourself» или выберите сценариста из списка. Теперь конкретный человек отвечает за этот ролик.
Добавьте ярлык (Label) — справа найдите «Labels» → нажмите шестеренку → создайте или выберите ярлык. Рекомендую создать набор: Status: Idea (желтый), Status: Writing (синий), Status: Review (оранжевый), Status: Approved (зеленый), Status: Published (серый). Поставьте ярлык Status: Idea.
Нажмите «Submit new issue» — задача создана. Она получила порядковый номер (например, #7). Этот номер — уникальный идентификатор идеи во всей системе.
Ситуация: идея пришла в голову на ходу

Вы едете в метро и придумали отличный хук. Откройте приложение GitHub на телефоне → зайдите в репозиторий → Issues → New issue. Напишите хотя бы заголовок и одно предложение в теле. Детали допишете позже с компьютера. Главное — идея зафиксирована в системе, а не в голове, откуда она испарится к вечеру.

Стадия 2. Черновик — создание ветки и файла

Сценарист берет задачу в работу. Первое действие — создать отдельную ветку (branch), в которой будет писать сценарий. Ветка — изолированная зона. Пока автор работает в ней, главная ветка main остается нетронутой.

Перейдите на главную страницу репозитория — вкладка «Code».
Нажмите на выпадающее меню с надписью «main» — оно расположено слева над списком файлов. Появится поле ввода и список веток.
Введите название новой ветки — формат: script/короткое-название. Например: script/nalogi-ip, script/cashback-honest, script/morning-routine. Слово script/ в начале — обязательная конвенция (договоренность), чтобы все ветки со сценариями группировались вместе.
Нажмите «Create branch: script/nalogi-ip from main» — GitHub создаст копию главной ветки. Вы автоматически переключитесь в новую ветку. Обратите внимание: в выпадающем меню теперь написано script/nalogi-ip, а не main.
Создайте файл сценария — нажмите «Add file» → «Create new file». В поле имени введите: 02_Approved_Scripts/2026-04-15_nalogi-ip.md. Обратите внимание: файл создается сразу в нужной папке. Когда сценарий пройдет проверку и будет одобрен через Merge, он окажется именно там.
Скопируйте шаблон сценария из раздела 6.2 этой инструкции и вставьте в редактор. Заполните шапку: название, дату, ваш username, хронометраж. Напишите хук.
Сохраните (Commit) — прокрутите вниз. В поле «Commit message» напишите осмысленное описание: Создан сценарий: хук + структура. Убедитесь, что выбрано «Commit directly to the script/nalogi-ip branch». Нажмите «Commit changes».
⚠️ Частая ошибка: сохранение в main Если вы забыли переключиться на свою ветку и создали файл в главной ветке — вы сломали процесс. Текст попал в «утвержденную» зону без проверки. Чтобы исправить: удалите файл из main (через интерфейс GitHub), заново создайте ветку и файл в ней. В разделе «Защита ветки» мы настроим правила, которые физически запретят такую ошибку.

Стадия 3. Работа над текстом — коммиты как контрольные точки

Сценарист пишет сценарий не за один присест. Каждое значимое изменение фиксируется коммитом. Коммит — «быстрое сохранение» с подписью.

Откройте файл сценария в своей ветке — убедитесь, что в выпадающем меню веток стоит ваша ветка (script/nalogi-ip), затем перейдите в папку и нажмите на файл.
Нажмите карандаш (Edit) — откроется редактор.
Внесите изменения — дописали тело сценария, изменили хук, добавили ремарки для оператора.
Сохраните с описанием — в поле «Commit message» кратко опишите, что изменилось. Примеры хороших сообщений: Добавил основное тело, 3 аргумента, Переписал хук — теперь провокационнее, Добавил CTA и caption для СММ, Исправил фактическую ошибку в цифрах.
Ситуация: хук не зашёл, нужно вернуть старый вариант

Вы переписали хук три раза. Третья версия хуже первой. Что делать?

Откройте файл в своей ветке. Нажмите «History» (справа от кнопки Edit). Вы увидите список всех коммитов — хронологию изменений. Нажмите на коммит, где хук был в первоначальном виде. Скопируйте нужный текст из того коммита. Вернитесь к текущей версии файла, нажмите Edit и замените хук. Сохраните с сообщением: Вернул первый вариант хука.

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

Золотое правило коммитов Один коммит — одно логическое изменение. Не сохраняйте одним коммитом «переписал хук, добавил тело, поменял CTA и исправил опечатку». Сделайте четыре коммита. Это позволяет откатить конкретное изменение, не трогая остальные.

Стадия 4. Запрос на проверку — создание Pull Request

Сценарий написан. Автор считает, что текст готов к съемке. Теперь нужно отправить его на проверку продюсеру. Для этого создается Pull Request (PR).

Перейдите на вкладку «Pull requests» — в верхнем меню репозитория.
Нажмите «New pull request» — зеленая кнопка.
Выберите ветки для сравнения — слева «base: main» (куда вливаем), справа «compare: script/nalogi-ip» (откуда берем). GitHub покажет разницу: зеленым — добавленные строки, красным — удаленные. Убедитесь, что отображается ваш новый файл сценария.
Нажмите «Create pull request».
Заполните заголовок PR — формат: [Script] Налоги ИП — ошибки на упрощенке. Квадратные скобки — необязательны, но помогают визуально отличать PR со сценариями от технических изменений.
Заполните описание PR — объясните продюсеру контекст. Что за ролик, зачем он нужен, есть ли референсы, на что обратить внимание при чтении. Сошлитесь на задачу (Issue): напишите Closes #7 — GitHub автоматически закроет Issue #7, когда PR будет одобрен и влит. Магия.
Назначьте ревьюера (Reviewers) — справа нажмите шестеренку у «Reviewers» и выберите продюсера. Он получит уведомление (email и/или GitHub-уведомление).
Добавьте ярлык — поставьте Status: Review.
Нажмите «Create pull request» — PR создан. Продюсер получает уведомление и видит запрос в списке Pull requests.
✅ Что видит продюсер Продюсер открывает Pull Request и видит: заголовок, описание, ссылку на Issue, а главное — вкладку «Files changed», где отображается весь текст сценария с подсветкой новых строк. Продюсер может навести курсор на любую строку и нажать синий «+», чтобы оставить комментарий прямо к этой строке.

Стадия 5. Ревью — продюсер проверяет текст

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

Продюсер открывает PR — через уведомление или вкладку «Pull requests» в репозитории.
Переходит на вкладку «Files changed» — здесь отображается содержимое сценария. Каждая строка пронумерована.
Оставляет комментарий к строке — наводит курсор на строку с хуком, нажимает синий «+». Появляется поле ввода. Пишет: «Хук слабый, нет провокации. Попробуй начать с шокирующей цифры». Нажимает «Start a review» (если первый комментарий) или «Add review comment» (если не первый).
Комментирует другие строки — аналогично. Например, к строке CTA: «Вместо "пишите в директ" сделай "подпишись и поставь 🔥"».
Завершает ревью — нажимает зеленую кнопку «Review changes» (справа вверху вкладки «Files changed»). Появляется окно с тремя опциями:
💬
Comment
Оставить замечания без вердикта. Используйте, если хотите обсудить, но пока не уверены, нужны ли правки. Сценарист увидит комментарии и решит сам.
🔄
Request Changes
Требовать правок. Сценарий не может быть влит (Merge заблокирован) до тех пор, пока автор не внесет исправления и продюсер не одобрит повторно. Используйте для серьезных замечаний.
Approve
Одобрить. Сценарий готов к съемке. После Approve можно нажимать Merge. Используйте, когда текст полностью устраивает.
Ситуация: продюсер запросил правки

Продюсер выбрал «Request Changes» и оставил три комментария к разным строкам. Сценарист открывает PR, видит красный индикатор «Changes requested». Читает комментарии. Открывает файл в своей ветке (Edit). Вносит правки. Сохраняет (Commit) с сообщением: Правки по ревью: новый хук, переписан CTA.

Новый коммит автоматически появляется в том же Pull Request — создавать новый PR не нужно. Сценарист пишет комментарий в PR: «Правки внесены, прошу перепроверить». Продюсер заходит, видит обновленную версию, сравнивает с предыдущей и, если всё хорошо, нажимает «Approve».

Стадия 6. Утверждение — Merge

Продюсер одобрил сценарий. Теперь нужно перенести его из ветки-черновика в главную ветку main. Эта операция называется Merge (слияние).

Продюсер открывает PR — после Approve внизу PR появляется зеленая кнопка «Merge pull request».
Нажимает «Merge pull request» — GitHub спрашивает подтверждение. Нажмите «Confirm merge».
Удалите ветку — после слияния GitHub предложит «Delete branch» (удалить ветку). Нажмите — черновик отработал свою задачу. Если вдруг ветка понадобится, её можно восстановить.
✅ Что произошло Файл 2026-04-15_nalogi-ip.md теперь лежит в папке 02_Approved_Scripts главной ветки. Issue #7 автоматически закрылся (потому что в описании PR было Closes #7). Ярлык можно вручную обновить на Status: Approved. Монтажер, оператор и СММ-менеджер могут открыть главную ветку и забрать финальный текст.

Стадия 7. Перемещение по конвейеру — от съемки до публикации

После утверждения сценарий проходит еще два этапа: съемка/монтаж и публикация. На каждом этапе файл «переезжает» в соответствующую папку.

Переход в продакшен: Когда начинается съемка, кто-то из команды (обычно продюсер) создает новую ветку, переносит файл из 02_Approved_Scripts/ в 03_Production/ через PR. В файл можно добавить: дату съемки, заметки оператора, ссылки на исходники видео.
Переход в архив: После публикации ролика файл переносится из 03_Production/ в 04_Archive_Published/. В файл дописывается: дата публикации, ссылка на опубликованный ролик, статистика первых 24 часов (просмотры, сохранения, комментарии).
Упрощенный вариант Если переносить файлы между папками кажется лишней работой — используйте только две папки: 02_Approved_Scripts/ (всё утвержденное) и 04_Archive_Published/ (всё опубликованное). Статусы отслеживайте через ярлыки (Labels) на Issues и через канбан-доску (GitHub Projects).

Часть 8. Роли и доступы — кто что может

Без правильных доступов система развалится в первый же день. Кто-то случайно закоммитит в main, кто-то удалит чужой файл. Настройка ролей — обязательный шаг.

8.1. Приглашение участников

Откройте Settings репозитория — вкладка «Settings» в верхнем меню (видна только владельцу / администратору).
Перейдите в «Collaborators» — в левом боковом меню нажмите «Collaborators» (или «Manage access» в некоторых версиях). GitHub может попросить подтвердить пароль.
Нажмите «Add people» — введите username участника (или email). Выберите его из списка.
Выберите роль — GitHub предложит уровни доступа. Для нашей структуры используйте:
Сценарист
Роль: Write
Может создавать ветки, коммитить в свои ветки, создавать Pull Requests и Issues. Не может напрямую коммитить в main (это запретим через Branch Protection). Не может нажимать Merge.
Продюсер / Редактор
Роль: Maintain (или Admin)
Всё то же, что у сценариста, плюс: может проводить ревью, одобрять (Approve) и нажимать Merge. Видит настройки репозитория. Если организации нет — можно дать Admin.
СММ / Монтажер / Оператор
Роль: Read
Только чтение. Заходит в папку 02_Approved_Scripts главной ветки, копирует текст для телесуфлера или caption. Не может ничего менять и удалять.

8.2. Настройка защиты ветки main (Branch Protection)

Критический шаг. Без него любой участник с правами Write может случайно (или намеренно) загрузить текст напрямую в main, минуя проверку продюсера. Защита ветки блокирует такую возможность.

Откройте Settings → Branches — в левом боковом меню настроек нажмите «Branches».
Нажмите «Add branch protection rule» (или «Add rule»). Если правило уже есть — отредактируйте его.
В поле «Branch name pattern» введите: main.
Включите «Require a pull request before merging» — поставьте галочку. Это требование: любой код (текст), попадающий в main, должен пройти через Pull Request.
Включите «Require approvals» — вложенная опция. Поставьте число «1» (одно одобрение от ревьюера). Это означает: пока продюсер не нажмет «Approve», кнопка Merge будет заблокирована.
Опционально: «Dismiss stale pull request approvals when new commits are pushed» — если включить, одобрение «сбрасывается», как только автор добавит новый коммит после Approve. Продюсер будет вынужден проверить текст ещё раз. Рекомендую включить — так сценарист не сможет добавить несогласованные правки после одобрения.
Нажмите «Create» (или «Save changes») — правило вступает в силу немедленно.
🚨 Что случится без этой настройки Сценарист торопится и нажимает «Commit directly to the main branch» при создании файла. Сырой текст без проверки попадает в базу утвержденных сценариев. Монтажер забирает его. Ролик снимается с ошибкой. Защита ветки делает такой сценарий физически невозможным — GitHub просто откажет в коммите и покажет сообщение: «Branch main is protected».

Часть 9. GitHub Projects — канбан-доска вашей редакции

Issues (задачи) удобнее отслеживать визуально — в виде карточек на доске с колонками. GitHub Projects — встроенный инструмент, который заменяет Trello и Notion для управления контент-конвейером.

9.1. Создание канбан-доски

Откройте вкладку «Projects» — в верхнем меню репозитория (или на уровне организации). Нажмите «New project».
Выберите шаблон «Board» — GitHub предложит несколько шаблонов. Выберите «Board» (доска). Дайте ей имя: Конвейер Рилсов 2026. Нажмите «Create».
Настройте колонки — по умолчанию будут «Todo», «In progress», «Done». Переименуйте их и добавьте новые. Нажмите на заголовок колонки, чтобы переименовать. Нажмите «+» справа от последней колонки, чтобы добавить. Рекомендуемая структура:
💡 Idea
Идея зафиксирована, ещё не взята в работу
✍️ Writing
Сценарист пишет текст в своей ветке
🔍 Review
Pull Request создан, ожидает проверки
🎬 Shoot
Текст утвержден, готов к съемке
🎞️ Edit
Видео на монтаже
✅ Published
Ролик опубликован

9.2. Привязка Issues к доске

Откройте доску — перейдите на вкладку «Projects» → выберите вашу доску.
Нажмите «+ Add item» внизу любой колонки. Начните вводить # и номер Issue (например, #7). GitHub покажет подходящие задачи. Выберите нужную — карточка появится в колонке.
Перетаскивайте карточки между колонками мышкой (drag & drop). Когда сценарист начал писать — перетащите из «Idea» в «Writing». Когда создал PR — в «Review». И так далее.
Ситуация: утренняя планерка

Понедельник, 10:00. Продюсер открывает канбан-доску и видит: в колонке «Idea» — 4 карточки. В «Writing» — 2. В «Review» — 1 (ваш!). В «Shoot» — 3 (нужно согласовать с оператором расписание на неделю). В «Published» — 8 роликов за прошлую неделю.

За 30 секунд продюсер понимает полную картину загрузки редакции. Без открытия чатов, без вопросов «а на каком этапе тот сценарий?».

Часть 10. Шаблоны Issues — стандартизация генерации идей

Если не задать формат, одни авторы будут писать Issue из одного слова («налоги»), другие — поэму на три экрана. Шаблон Issue (Issue Template) задает обязательные поля, которые автор заполняет при создании задачи.

10.1. Создание шаблона

Откройте Settings → General — прокрутите до раздела «Features» → найдите «Issues» → нажмите «Set up templates».
Нажмите «Add template» → «Custom template».
Заполните шаблон:

Имя шаблона: Новый рилс / шортс. Описание: Используйте этот шаблон для предложения идеи нового ролика. Содержимое (body):

## Концепция
**Боль аудитории:** Какую проблему зрителя решает ролик?

**Основной месседж:** Что зритель должен понять / почувствовать?

## Формат
- [ ] Говорящая голова
- [ ] Текст на экране
- [ ] Скетч / мини-сценка
- [ ] Закадровый голос
- [ ] Другое: ___

**Хронометраж:** __ сек.
**Целевая площадка:** Instagram / TikTok / YouTube Shorts

## Хук (черновой)
> Напишите хотя бы примерный хук — первые 3 секунды.

## Call to Action
Что зритель должен сделать после просмотра?

## Референсы
Ссылки на похожие ролики (TikTok, Reels), которые нравятся:
- 
- 

## Дедлайн
Когда ролик должен быть снят и опубликован?
Нажмите «Propose changes» → «Commit changes» — GitHub сохранит шаблон в файле .github/ISSUE_TEMPLATE/ внутри репозитория. Теперь при создании нового Issue автор увидит эту структуру с готовыми полями.
✅ Эффект Любая идея, попадающая в систему, автоматически содержит: боль аудитории, формат, хук (хотя бы черновой), CTA и референсы. Продюсер принимает решение «в работу / на доработку / отклонить» за минуту, потому что вся информация перед глазами.

Часть 11. Система ярлыков (Labels) — цветовая навигация

Ярлыки — цветные метки, которые вешаются на Issues и Pull Requests. Они помогают мгновенно понять статус, тип контента и приоритет задачи.

11.1. Создание набора ярлыков

Откройте Issues → Labels — вкладка «Issues» → кнопка «Labels» (рядом с «Milestones»).
Удалите стандартные ярлыки — GitHub создает набор по умолчанию (bug, enhancement, etc.). Они вам не нужны. Нажмите «Delete» у каждого.
Создайте собственные — нажмите «New label» и добавьте каждый из ярлыков ниже:

Ярлыки статусов

Status: Idea — жёлтый (#f59e0b)

Status: Writing — синий (#3b82f6)

Status: Review — оранжевый (#f97316)

Status: Approved — зеленый (#10b981)

Status: Shooting — фиолетовый (#8b5cf6)

Status: Published — серый (#6b7280)

Ярлыки типа и приоритета

Priority: Urgent — красный (#ef4444)

Type: Reels — бирюзовый (#008080)

Type: Shorts — голубой (#00B4D8)

Type: TikTok — розовый (#ec4899)

Rework — сиреневый (#a855f7)

On Hold — тёмно-серый (#64748b)

Часть 12. Автоматизация — GitHub Actions

Для продвинутых команд. GitHub Actions — встроенная автоматизация, которая срабатывает на события (создание PR, слияние, создание Issue). Можно настроить бота, который уведомляет команду о готовых сценариях.

12.1. Уведомление в Telegram при утверждении сценария

Задача: когда продюсер нажимает Merge (сценарий утвержден), бот автоматически пишет в рабочий Telegram-чат: «Сценарий 'Налоги ИП' утвержден и готов к съемке. Ссылка: ...».

Создайте Telegram-бота — напишите @BotFather в Telegram. Отправьте команду /newbot. Следуйте инструкциям: укажите имя и username бота. BotFather выдаст вам токен — длинную строку из цифр и букв. Сохраните её.
Узнайте ID чата — добавьте бота в рабочий групповой чат Telegram. Отправьте любое сообщение в чат. Откройте в браузере: https://api.telegram.org/bot<ВАШ_ТОКЕН>/getUpdates. В ответе найдите поле "chat": {"id": -100XXXXXXXXX}. Число с минусом — ID вашего чата. Скопируйте его.
Сохраните секреты в GitHub — откройте Settings репозитория → «Secrets and variables» → «Actions» → «New repository secret». Создайте два секрета: TELEGRAM_BOT_TOKEN (вставьте токен бота) и TELEGRAM_CHAT_ID (вставьте ID чата).
Создайте файл автоматизации — на главной странице репозитория нажмите «Add file» → «Create new file». В поле имени введите: .github/workflows/notify-telegram.yml. Вставьте содержимое (ниже). Сохраните с сообщением Добавлена автоматизация Telegram-уведомлений.

Содержимое файла notify-telegram.yml:

name: Telegram Notification on Merge

on:
  pull_request:
    types: [closed]

jobs:
  notify:
    if: github.event.pull_request.merged == true
    runs-on: ubuntu-latest
    steps:
      - name: Send Telegram Message
        run: |
          PR_TITLE="$"
          PR_URL="$"
          AUTHOR="$"
          MESSAGE="✅ Сценарий утвержден!%0A%0A📝 ${PR_TITLE}%0A👤 Автор: ${AUTHOR}%0A🔗 ${PR_URL}"
          curl -s -X POST \
            "https://api.telegram.org/bot$/sendMessage" \
            -d chat_id=$ \
            -d text="${MESSAGE}" \
            -d parse_mode=HTML
✅ Результат Каждый раз, когда продюсер нажимает Merge, в Telegram-чат команды приходит сообщение: «✅ Сценарий утвержден! 📝 [Script] Налоги ИП — ошибки на упрощенке. 👤 Автор: ivan-petrov. 🔗 Ссылка на PR». Оператор видит уведомление и может сразу забрать текст.

Часть 13. Типичные ситуации и их решения

Ситуация: два сценариста работают одновременно

Оля пишет сценарий про налоги (ветка script/nalogi-ip), а Петя — про кэшбэк (ветка script/cashback). Они работают параллельно и не мешают друг другу. У каждого своя ветка, свой файл, свой Pull Request. Продюсер проверяет их независимо. Даже если Петя допустит ошибку и сломает свой файл, Олин сценарий останется нетронутым.

Ситуация: продюсер хочет сам внести правку

Продюсер читает сценарий в Pull Request и понимает, что быстрее самому переписать одну строчку, чем объяснять сценаристу. Он может это сделать: во вкладке «Files changed» продюсер нажимает «...» справа от файла → «Edit file». Вносит правку, сохраняет коммит прямо в ветку сценариста. Автор увидит изменение в истории PR.

Ситуация: идея не подошла — нужно отклонить

Автор создал Issue с идеей, но продюсер решил, что тема не подходит. Продюсер открывает Issue, пишет комментарий: «Тема слишком узкая, пока ставим на паузу». Ставит ярлык On Hold или закрывает Issue кнопкой «Close issue». Идея не удаляется — она остается в истории и может быть возобновлена в будущем.

Ситуация: нужно срочно переделать уже утвержденный сценарий

Ролик утвержден, но вечером перед съемкой продюсер решил поменять CTA. Он создает новую ветку fix/nalogi-ip-cta, открывает файл в папке 02_Approved_Scripts/, вносит правку, коммитит и открывает Pull Request. Поскольку продюсер сам — ревьюер, он может одобрить собственный PR (если настройки это позволяют) или попросить второго человека. После Merge файл в main обновлен.

Ситуация: новый сценарист пришел в команду

Вы нанимаете нового автора. Шаги: (1) он регистрируется на GitHub, (2) присылает вам username, (3) вы добавляете его в репозиторий с ролью Write, (4) он открывает README.md и читает правила, (5) скачивает шаблон сценария. Через 10 минут он готов к работе. Никаких инструктажей «где лежит папка с файлами в Google Drive».

Ситуация: что-то пошло не так, и файл удалён

В Git ничего не удаляется навсегда. Даже если кто-то удалил файл и закоммитил удаление — вы можете посмотреть историю коммитов, найти момент перед удалением и восстановить файл. Откройте главную страницу репозитория → нажмите «Commits» (рядом с количеством коммитов) → найдите коммит, в котором файл ещё существовал → откройте его → скопируйте содержимое → создайте новый файл с тем же именем.

Часть 14. Миграция из Google Docs — пошаговый переезд

У вас уже есть десятки сценариев в Google Docs. Переносить их все разом не нужно. Используйте стратегию «только новое в GitHub, старое по мере необходимости».

01
День 1: Настройте репозиторий Выполните шаги из частей 3-8 этой инструкции. Создайте репозиторий, папки, защиту ветки, пригласите участников. На это уйдет 30-40 минут.
02
День 2: Перенесите 3-5 последних утвержденных сценариев Откройте Google Docs с недавними сценариями. Скопируйте текст. Создайте .md файл в главной ветке (в данном случае — разрешено коммитить в main напрямую, потому что это разовый перенос архива). Адаптируйте текст под Markdown-формат. Это займет 5-10 минут на сценарий.
03
Неделя 1: Все новые идеи — только через Issues Договоритесь с командой: начиная с этой недели каждая новая идея фиксируется как Issue. Кто-то из команды будет забывать — мягко напоминайте и помогайте создать первую задачу.
04
Неделя 2: Первый сценарий через полный цикл Один сценарист проходит весь маршрут: Issue → Branch → Commits → Pull Request → Review → Merge. Остальная команда наблюдает и учится. Разберите все вопросы на общем созвоне.
05
Месяц 1: Полный переход К концу первого месяца вся команда работает через GitHub. Google Docs используется только для старых документов, которые не стоит переносить (они уже в архиве). Все новые сценарии живут в репозитории.
⚠️ Главная ошибка при миграции Попытка перенести весь архив (50+ файлов) за один день. Это вызывает усталость и разочарование. Переносите только то, что актуально. Старые сценарии, которые уже сняты и опубликованы, можно оставить в Google Docs навсегда.

Часть 15. Финальный чеклист запуска

Распечатайте этот список и отмечайте каждый выполненный пункт. Когда все галочки стоят — система готова к работе.

Аккаунты Каждый участник команды зарегистрирован на GitHub и прислал свой username.
Репозиторий Создан приватный репозиторий с четырьмя папками и заполненным README.md.
Доступы Каждый участник добавлен с правильной ролью (Write / Maintain / Read).
Защита ветки Branch Protection включена для main: требуется Pull Request и одно одобрение.
Шаблон Issue Создан шаблон «Новый рилс / шортс» с обязательными полями.
Ярлыки Созданы цветные ярлыки статусов, типов и приоритетов.
Канбан-доска Создан GitHub Project с колонками конвейера.
Тестовый прогон Один сценарий прошел полный цикл: Issue → Branch → PR → Review → Merge.
Обучение команды Проведен общий созвон, на котором каждый участник показал, что умеет выполнять свою роль.

Хотите внедрить системный контент-инжиниринг?

Переход от хаотичных чатов к структурному ведению базы контента — первый шаг к системному медиа-бизнесу. На бизнес-миссиях мы показываем, как автоматизировать продакшен и выстроить работу редакции по принципам IT-стартапа.