0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Независимо от выбранного языка или направления разработки, написанный код всегда остается обычным текстом, записанным во множестве файлов. Эти файлы регулярно добавляются, удаляются и изменяются. И в процессе работы над ними возникает множество вопросов:</p>
1
<p>Независимо от выбранного языка или направления разработки, написанный код всегда остается обычным текстом, записанным во множестве файлов. Эти файлы регулярно добавляются, удаляются и изменяются. И в процессе работы над ними возникает множество вопросов:</p>
2
<ul><li>Как не потерять файлы с исходным кодом?</li>
2
<ul><li>Как не потерять файлы с исходным кодом?</li>
3
<li>Как вспомнить, что и где менялось недавно?</li>
3
<li>Как вспомнить, что и где менялось недавно?</li>
4
<li>Как защититься от случайных исправлений и удалений?</li>
4
<li>Как защититься от случайных исправлений и удалений?</li>
5
<li>Как отменить изменения, если они оказались некорректными?</li>
5
<li>Как отменить изменения, если они оказались некорректными?</li>
6
<li>Как работать над кодом одновременно двум и более программистам?</li>
6
<li>Как работать над кодом одновременно двум и более программистам?</li>
7
</ul><p>Представьте, что ваш проект состоит из сотни файлов и десятков тысяч строк кода. Вы делаете какую-то задачу, в процессе меняете 15 файлов и 300 строк кода - и вдруг выясняется, что эта задача больше неактуальна. На этом моменте нужно вернуться к состоянию исходного кода, которое было до изменений.</p>
7
</ul><p>Представьте, что ваш проект состоит из сотни файлов и десятков тысяч строк кода. Вы делаете какую-то задачу, в процессе меняете 15 файлов и 300 строк кода - и вдруг выясняется, что эта задача больше неактуальна. На этом моменте нужно вернуться к состоянию исходного кода, которое было до изменений.</p>
8
<p>Другой пример - в процессе работы над одной задачей вы понимаете, что нужно срочно внести какое-то другое исправление в текущий проект. Первую задачу в нерабочем состоянии выкладывать на сайт нельзя. Значит, исправление нужно вносить в ту версию кода, которая была до начала работы над первой задачей.</p>
8
<p>Другой пример - в процессе работы над одной задачей вы понимаете, что нужно срочно внести какое-то другое исправление в текущий проект. Первую задачу в нерабочем состоянии выкладывать на сайт нельзя. Значит, исправление нужно вносить в ту версию кода, которая была до начала работы над первой задачей.</p>
9
<p>Совместная разработка - это отдельная головная боль. Представим, что два программиста работают над задачами и вносят исправления кода в одни и те же файлы. Как им выполнить эту работу так, чтобы не повредить и не перезаписать изменения другого разработчика?</p>
9
<p>Совместная разработка - это отдельная головная боль. Представим, что два программиста работают над задачами и вносят исправления кода в одни и те же файлы. Как им выполнить эту работу так, чтобы не повредить и не перезаписать изменения другого разработчика?</p>
10
<p>Для решения всех этих и многих других задач, программисты используют<a><strong>Git</strong></a>- систему контроля версий. Это программа, позволяющая контролировать изменения файлов проекта для одиночной и совместной разработки кода.</p>
10
<p>Для решения всех этих и многих других задач, программисты используют<a><strong>Git</strong></a>- систему контроля версий. Это программа, позволяющая контролировать изменения файлов проекта для одиночной и совместной разработки кода.</p>
11
<p>В этом уроке мы начнем свое знакомство с Git.</p>
11
<p>В этом уроке мы начнем свое знакомство с Git.</p>
12
<p>В современном мире Git стал универсальным инструментом, с которого начинается практически любой проект в разработке. Кстати, этот курс тоже делался с помощью Git.</p>
12
<p>В современном мире Git стал универсальным инструментом, с которого начинается практически любой проект в разработке. Кстати, этот курс тоже делался с помощью Git.</p>
13
<p>К базовым возможностям Git относятся:</p>
13
<p>К базовым возможностям Git относятся:</p>
14
<ul><li>Возврат к любой прошлой версии кода</li>
14
<ul><li>Возврат к любой прошлой версии кода</li>
15
<li>Просмотр истории изменений</li>
15
<li>Просмотр истории изменений</li>
16
<li>Восстановление любых данных</li>
16
<li>Восстановление любых данных</li>
17
<li>Совместная работа без риска потерять данные или перезаписать чужую работу</li>
17
<li>Совместная работа без риска потерять данные или перезаписать чужую работу</li>
18
</ul><p>Git интегрирован во все редакторы кода. Вся существующая экосистема инструментов построена именно вокруг Git и онлайн-сервисов, которые с ним интегрированы - например,<a>GitHub</a>или<a>GitLab</a>.</p>
18
</ul><p>Git интегрирован во все редакторы кода. Вся существующая экосистема инструментов построена именно вокруг Git и онлайн-сервисов, которые с ним интегрированы - например,<a>GitHub</a>или<a>GitLab</a>.</p>
19
<p>Как правило, код проектов хранится именно на этих сайтах, обеспечивая команду и совместным доступом, и копией на случай поломки компьютеров.</p>
19
<p>Как правило, код проектов хранится именно на этих сайтах, обеспечивая команду и совместным доступом, и копией на случай поломки компьютеров.</p>
20
<p>Git - довольно сложная система с большим количеством команд и способов работы. Даже опытные разработчики часто обращаются к документации и не знают многих ее возможностей. Помимо официальной документации, есть еще один ключевой источник для освоения Git - книга<a>Pro Git</a>.</p>
20
<p>Git - довольно сложная система с большим количеством команд и способов работы. Даже опытные разработчики часто обращаются к документации и не знают многих ее возможностей. Помимо официальной документации, есть еще один ключевой источник для освоения Git - книга<a>Pro Git</a>.</p>
21
<p>С другой стороны, начать пользоваться Git довольно просто. Дело в том, что у Git есть ядро, которого хватает в подавляющем большинстве случаев. Оно касается не только команд для работы с ним, но и некоторых идей, которые лежат в его основе.</p>
21
<p>С другой стороны, начать пользоваться Git довольно просто. Дело в том, что у Git есть ядро, которого хватает в подавляющем большинстве случаев. Оно касается не только команд для работы с ним, но и некоторых идей, которые лежат в его основе.</p>
22
<p>Именно с ними мы и будем разбираться на протяжении этого курса. Однако всегда нужно держать в голове одну деталь. Git - такая штука, понять которую можно только непрерывно практикуясь и совершая ошибки. Еще никто не научился использовать Git, прочитав документацию или просмотрев курс.</p>
22
<p>Именно с ними мы и будем разбираться на протяжении этого курса. Однако всегда нужно держать в голове одну деталь. Git - такая штука, понять которую можно только непрерывно практикуясь и совершая ошибки. Еще никто не научился использовать Git, прочитав документацию или просмотрев курс.</p>
23
<p>В этом курсе мы установим Git и научимся работать с его основными командами. Мы создадим свой первый репозиторий и отработаем на нем типичные задачи, возникающие в разработке: добавление, изменение или удаление файлов, анализ истории проекта. Также мы познакомимся с онлайн-сервисами для хранения кода и движением открытого кода.</p>
23
<p>В этом курсе мы установим Git и научимся работать с его основными командами. Мы создадим свой первый репозиторий и отработаем на нем типичные задачи, возникающие в разработке: добавление, изменение или удаление файлов, анализ истории проекта. Также мы познакомимся с онлайн-сервисами для хранения кода и движением открытого кода.</p>
24
<p>Задача данного курса - дать основы и показать направления, а дальше осваивать эту тему помогут только эксперименты.</p>
24
<p>Задача данного курса - дать основы и показать направления, а дальше осваивать эту тему помогут только эксперименты.</p>
25
<p>Как правило, Git активно изучается в первые месяцы после трудоустройства, и этот процесс проходит болезненно. Так происходит, потому что во время обучения сложно смоделировать проблемы, возникающие в совместной разработке.</p>
25
<p>Как правило, Git активно изучается в первые месяцы после трудоустройства, и этот процесс проходит болезненно. Так происходит, потому что во время обучения сложно смоделировать проблемы, возникающие в совместной разработке.</p>
26
<p>В таком случае выигрывают те разработчики, которые во время обучения активно вовлекаются в работу над<a>открытыми проектами</a>. Это самый верный способ по-настоящему разобраться и научиться виртуозно владеть Git.</p>
26
<p>В таком случае выигрывают те разработчики, которые во время обучения активно вовлекаются в работу над<a>открытыми проектами</a>. Это самый верный способ по-настоящему разобраться и научиться виртуозно владеть Git.</p>
27
<p>Перед началом курса мы рекомендуем установить и настроить Git по<a>нашей инструкции</a>.</p>
27
<p>Перед началом курса мы рекомендуем установить и настроить Git по<a>нашей инструкции</a>.</p>