HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Теги: devops, git, репозиторий, система контроля версий, merge, devops-практики, devops-инструменты, cvcs, centralized version control system, dvcs, distributed version control system</p>
1 <p>Теги: devops, git, репозиторий, система контроля версий, merge, devops-практики, devops-инструменты, cvcs, centralized version control system, dvcs, distributed version control system</p>
2 <p>СVCS (Centralized Version Control System) -<strong>централизованные системы контроля версий</strong>, работа которых основана на том, что на сервере имеется одна центральная копия проекта, а программисты совершают свои изменения в этой центральной копии.</p>
2 <p>СVCS (Centralized Version Control System) -<strong>централизованные системы контроля версий</strong>, работа которых основана на том, что на сервере имеется одна центральная копия проекта, а программисты совершают свои изменения в этой центральной копии.</p>
3 <p>Таким образом, если нам нужно получить какую-нибудь ветку, мы идём на сервер, и он нам отдаёт эту ветку. Схему работы<strong>CVCS</strong>легко демонстрирует простой рисунок: В современных проектах<strong>СVCS</strong>практически не используются, так как они устарели и считаются архаизмом. Связано это с недостаточной эффективностью и ограниченными возможностями CVCS. Например, если инженер-разработчик отправлялся в регион, где есть проблемы с интернетом, возникал вопрос: как хранить всю историю изменений в коде?</p>
3 <p>Таким образом, если нам нужно получить какую-нибудь ветку, мы идём на сервер, и он нам отдаёт эту ветку. Схему работы<strong>CVCS</strong>легко демонстрирует простой рисунок: В современных проектах<strong>СVCS</strong>практически не используются, так как они устарели и считаются архаизмом. Связано это с недостаточной эффективностью и ограниченными возможностями CVCS. Например, если инженер-разработчик отправлялся в регион, где есть проблемы с интернетом, возникал вопрос: как хранить всю историю изменений в коде?</p>
4 <p>Кроме невозможности удалённой работы при плохом интернете, нельзя не упомянуть ограниченную сервером производительность и сложности при<strong>merge'е</strong>наработок разных специалистов. В общем, если на вашем проекте до сих пор применяют<strong>CVCS</strong>- бегите.</p>
4 <p>Кроме невозможности удалённой работы при плохом интернете, нельзя не упомянуть ограниченную сервером производительность и сложности при<strong>merge'е</strong>наработок разных специалистов. В общем, если на вашем проекте до сих пор применяют<strong>CVCS</strong>- бегите.</p>
5 <h2>Что пришло на смену CVCS?</h2>
5 <h2>Что пришло на смену CVCS?</h2>
6 <p>В настоящее время при разработке программного обеспечения используют<strong>децентрализованные</strong>(распределённые) системы контроля версий<strong>DVCS</strong>(Distributed Version Control System). Они имеют несколько иную структуру и ряд принципиальных отличий. Например, у каждого инженера/разработчика есть свой<strong>репозиторий</strong>, который полностью копирует центральный, причём центральный сервер выступает в большей степени в качестве хаба для обмена. Наиболее яркий пример -<strong>Git</strong>.</p>
6 <p>В настоящее время при разработке программного обеспечения используют<strong>децентрализованные</strong>(распределённые) системы контроля версий<strong>DVCS</strong>(Distributed Version Control System). Они имеют несколько иную структуру и ряд принципиальных отличий. Например, у каждого инженера/разработчика есть свой<strong>репозиторий</strong>, который полностью копирует центральный, причём центральный сервер выступает в большей степени в качестве хаба для обмена. Наиболее яркий пример -<strong>Git</strong>.</p>
7 <p>Что это даёт: - возможность работы<strong>локально</strong>: программист вносит изменения в код без сетевого взаимодействия, а после возвращения с командировки просто выполняется слияние версий; - автоматическое<strong>резервное копирование</strong>: так как каждый разработчик имеет свою копию, проект легко восстанавливается в случае непредвиденного падения центрального сервера; - возможность работать<strong>быстрее</strong>: раз всё происходит офлайн, не нужно ждать ответа сервера, что повышает скорость коммитов, дифов и т. п.</p>
7 <p>Что это даёт: - возможность работы<strong>локально</strong>: программист вносит изменения в код без сетевого взаимодействия, а после возвращения с командировки просто выполняется слияние версий; - автоматическое<strong>резервное копирование</strong>: так как каждый разработчик имеет свою копию, проект легко восстанавливается в случае непредвиденного падения центрального сервера; - возможность работать<strong>быстрее</strong>: раз всё происходит офлайн, не нужно ждать ответа сервера, что повышает скорость коммитов, дифов и т. п.</p>
8 <h2>Схема работы DVCS</h2>
8 <h2>Схема работы DVCS</h2>
9 <p>На этом пока всё. Если хотите подробнее узнать о<strong>GIT</strong>и методах работы с ним, записывайтесь на курс "<a>DevOps практики и инструменты</a>"!</p>
9 <p>На этом пока всё. Если хотите подробнее узнать о<strong>GIT</strong>и методах работы с ним, записывайтесь на курс "<a>DevOps практики и инструменты</a>"!</p>
10 <p><em>А какую DVCS используете вы? Пишите в комментариях!</em></p>
10 <p><em>А какую DVCS используете вы? Пишите в комментариях!</em></p>
11  
11