2 lines
5.7 KiB
JavaScript
2 lines
5.7 KiB
JavaScript
|
|
import{_ as a,o as t,c as r,ae as l}from"./chunks/framework.B1nRs-GM.js";const h=JSON.parse('{"title":"Template Sync Strategy","description":"Управляемое обновление проектов от шаблона через чистую ветку template, временные sync-ветки и PR/MR.","frontmatter":{"title":"Template Sync Strategy","description":"Управляемое обновление проектов от шаблона через чистую ветку template, временные sync-ветки и PR/MR.","keywords":["template sync","шаблон проекта","обновление шаблона","git template","sync branch","template branch"]},"headers":[],"relativePath":"overview.md","filePath":"overview.md"}'),o={name:"overview.md"};function i(s,e,c,n,d,p){return t(),r("div",null,[...e[0]||(e[0]=[l('<div style="display:none;" hidden="true" aria-hidden="true">Are you an LLM? You can read better optimized documentation at /template-sync-strategy/overview.md for this page in Markdown format</div><h1 id="template-sync-strategy" tabindex="-1">Template Sync Strategy <a class="header-anchor" href="#template-sync-strategy" aria-label="Permalink to "Template Sync Strategy""></a></h1><p>Template Sync Strategy описывает процесс, при котором приложение создаётся от шаблона и дальше регулярно получает обновления шаблона без ручного копирования файлов.</p><p>Основной маршрут:</p><div class="language-text vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">text</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>templates/master -> template -> sync/* -> master</span></span></code></pre></div><p>Где:</p><ul><li><code>templates/master</code> — основная ветка внешнего репозитория шаблона.</li><li><code>template</code> — чистый слепок шаблона внутри репозитория приложения.</li><li><code>sync/*</code> — временная ветка, где шаблон накладывается на приложение.</li><li><code>master</code> — основная ветка приложения.</li></ul><h2 id="задача" tabindex="-1">Задача <a class="header-anchor" href="#задача" aria-label="Permalink to "Задача""></a></h2><p>Шаблон хорошо решает старт проекта: приносит CI/CD, Dockerfile, зависимости, линтер, сборку, структуру и базовую документацию. Но после старта приложения расходятся: где-то обновили CI, где-то забыли, где-то сделали локальную кастомизацию.</p><p>Стратегия нужна, чтобы шаблон оставался общей технической базой не только в первый день проекта, но и на всём жизненном цикле приложения.</p><h2 id="главныи-принцип" tabindex="-1">Главный принцип <a class="header-anchor" href="#главныи-принцип" aria-label="Permalink to "Главный принцип""></a></h2><p>Ветка <code>template</code> должна оставаться чистым слепком оригинального шаблона.</p><p>В неё нельзя коммитить изменения приложения и нельзя решать конфликты. Все конфликтные решения выполняются только во временных ветках <code>sync/*</code>.</p><h2 id="состав-документации" tabindex="-1">Состав документации <a class="header-anchor" href="#состав-документации" aria-label="Permalink to "<EFBFBD>
|