Skip to content
RPG edited this page Jan 10, 2014 · 1 revision

Процесс разработки программного обеспечения по своей природе является итерационным — программист постоянно совершенствует свою программу, добавляя новые возможности и исправляя найденные ошибки. Так возникает задача хранения исходных кодов программных проектов и управления их версиями. Решать эту задачу вынужден каждый программист и каждый может решать её по-своему, но очевидно, что с увеличением сложности программы и объёмов её исходного кода, решение данной задачи также становится более сложным. Управлять версиями программы становится ещё сложнее, если программист над проектом работает не один, а ведётся коллективная разработка. Задача ещё усложняется, если коллектив разработчиков разбросан по разным городам и даже странам. Так появляется отдельный класс программного обеспечения, предназначенный для удобного управления версиями исходного кода программы с возможностью вести коллективную распределённую разработку.

Данное учебное пособие посвящено самой популярной на сегодня системе управления версиями Git, появление которой стало результатом поиска эффективной схемы хранения исходных кодов самого известного на сегодня проекта с открытым исходным кодом — ядра Linux. Исходный код ядра Linux включает более 15 млн. строк кода, а в проект одновременно вовлечено более тысячи разработчиков, разбросанных по всему миру. Кроме того, огромное число разработчиков являются потребителями результатов этого проекта — это мэйнтейнеры разных дистрибутивов GNU/Linux, разработчики встраиваемых решений и даже рядовые продвинутые пользователи, которые стремятся использовать самые свежие версии ядра Linux. Так вот чтобы объединить всех этих людей с разными задачами используется система Git. Поэтому систему Git можно смело отнести к тем инструментальным средствам, которыми должен в совершенстве владеть любой разработчик сложных программных систем.

Но система Git давно вышла за рамки обычного программного средства и породила целые сетевые сообщества разработчиков, одно из которых — GitHub, - будет рассмотрено в пособии. Социальный эффект таких сообществ очень позитивен, так как они помогают начинающим программистам получить доступ к исходным кодам известных программных продуктов, а также заявить о себе или войти в состав действующей команды разработчиков. Учебное пособие предназначено для студентов, обучающихся по направлениям «Прикладная математика и информатика», «Информатика и вычислительная техника», а также других направлений, связанных с разработкой программного обеспечения. Оно появилось в результате чтения авторами ряда курсов по изучению языков программирования на кафедре № 36 «Информационные системы и технологии».

Практические аспекты работы с системой Git рассмотрены в среде операционной системы GNU/Linux, поэтому подразумевается, что читатель знаком с данной операционной системой и владеет навыками работы в командной строке. Однако подчеркнём, что система Git является кросс-платформенной и широко используется в самых разных операционных системах.

Clone this wiki locally