Skip links

Знакомство с Git: гайд для начинающих

Git — это система контроля версий, которая широко используется в мире. Это особенно важный навык для программистов. В этом шаг за шагом руководстве для новичков вы узнаете, как использовать Git для управления исходным кодом. Эффективное использование Git позволяет управлять изменениями в исходном коде, работать с несколькими версиями программы и сотрудничать с другими программистами. В этом гайде вы узнаете основные команды Git, необходимые для начала работы с системой контроля версий, и научитесь работать с репозиториями Git.

Что такое Git и что такое GitHub

Git — это бесплатная распределенная система контроля версий с открытым исходным кодом, которая обрабатывает изменения кода в программных проектах любого размера. Git позволяет нескольким разработчикам одновременно работать над одним проектом.

Git является распределенной системой контроля версий с открытым исходным кодом, которая предназначена для управления изменениями в программных проектах различных масштабов. Благодаря Git несколько разработчиков могут одновременно работать над одним проектом, внося изменения в исходный код. Она позволяет отслеживать изменения, вносить комментарии к ним, откатывать проект к предыдущим версиям, сливать изменения, решать конфликты, а также делиться своим кодом с другими пользователями. Более того, Git имеет удобный интерфейс и широко используется в индустрии разработки программного обеспечения.

GitHub — это веб-сервис для хранения и совместной работы над Git-репозиториями, который предоставляет разработчикам инструменты для совместной работы над проектами и отслеживания изменений в коде и облачное хранилище. GitHub позволяет управлять версиями исходного кода, предоставляет возможность создания отчетов об ошибках, интегрируется с другими сервисами разработки и является платформой для открытого программного обеспечения. Git используется в качестве основной системы контроля версий на GitHub, но также может использоваться и другие VCS.

Пошаговая инструкция по Git

Следуйте приведенным ниже шагам, чтобы начать использовать Git.

Шаг 1: Установка Git и создание учетной записи GitHub

Установите Git на свой компьютер. Для этого загрузите установочный файл с официального сайта Git и следуйте инструкциям. Установка программы будет различаться в зависимости от операционной системы. Скачайте с официального сайта последнюю версию и следуйте предлагаемым указаниям. Если на вашем компьютере уже установлен Git, обновитесь до последней доступной версии.

После установки создайте бесплатную учетную запись GitHub. Для этого выполните следующие действия.

    1. Посетите официальную страницу создания учетной записи.
    2. Придумайте имя пользователя, введите адрес своей электронной почты и придумайте пароль.
    3. Подпишитесь на рассылку об обновлениях или откажитесь от нее, сняв флажок.
    4. Подтвердите, что не являетесь роботом.
    5. Нажмите Create account.

Создать аккаунт на GitHub очень простоСоздать аккаунт на GitHub очень просто

  1. GitHub отправит код подтверждения на указанную электронную почту. Скопируйте и вставьте его в соответствующее поле.
  2. При необходимости персонализируйте учетную запись или пропустите этот шаг.

Готово! Вы успешно создали учетную запись на GitHub.

Шаг 2: Создание локального репозитория Git

После установки или обновления Git следующим шагом будет создание локального репозитория. Чтобы создать его, выполните следующие действия:

    1. Откройте терминал (консоль, Git Bash, командную строку) и перейдите в каталог, в котором на компьютере будет храниться проект. Например.

cd ~/Desktop

mkdir myproject

cd myproject/

В примере выше выполнен переход на рабочий стол, на котором создана папка myproject и выполнен переход в нее.

  1. Создайте репозиторий в выбранной папке, выполнив команду git init:

git init [имя репозитория]

Командная строка только выглядит страшноКомандная строка только выглядит страшно

Шаг 3: Создание нового репозитория на GitHub

GitHub позволяет отслеживать код, когда вы работаете с командой и требуется внести модификации. Чтобы создать новый репозиторий, выполните следующие действия:

    1. Войдите в систему и перейдите на домашнюю страницу GitHub.
    2. Найдите опцию New repository под знаком плюса рядом с фотографией профиля в правом верхнем углу.

Команды под знаком плюса позволяют создавать репозитории, проекты и т. д.Команды под знаком плюса позволяют создавать репозитории, проекты и т. д.

    1. Введите имя для вашего репозитория, сделайте краткое описание и выберите параметры конфиденциальности.

Краткое описание позволяет быстро понять, какой проект хранится в репозиторииКраткое описание позволяет быстро понять, какой проект хранится в репозитории

  1. Нажмите кнопку Create repository.

GitHub позволяет добавить существующий репозиторий, который вы создали локально. Чтобы перенести его с компьютера на GitHub, используйте команды:

git remote add origin https://github.com/[ваш логин]/[название репозитория.git]

git push -u origin master

Перенос локального репозитория на GitHubПеренос локального репозитория на GitHub

Шаг 4: Добавление файлов в репозиторий

Git понимает, когда вы добавляете или изменяете файлы в папке, содержащей репозиторий, но не отслеживает их, пока соответствующее не указано. Git сохраняет изменения только для файлов, которые отслеживаются, поэтому нужно обозначить их. Чтобы проверить, какие файлы уже отслеживаются Git, выполните команду:

git status

Командная строка покажет, какие файлы уже отслеживаются GitКомандная строка покажет, какие файлы уже отслеживаются Git

Git уведомляет пользователя, если у него есть какие-либо неотслеживаемые файлы. Если вы хотите, чтобы Git начал отслеживать файл, выполните следующую команду:

git add [название файла]

Настроить отслеживание можно для отдельных файловНастроить отслеживание можно для отдельных файлов

В примере выше Git поручили отслеживать изменения для файла test.txt. Повторный запуск команды git status показывает, что Git отслеживает указанный файл.

Шаг 5: Отправка файлов в Git

Работа с Git обычно подразумевает добавление всех файлов в индекс (промежуточная область, в которой хранятся изменения файлов на пути от рабочей директории до репозитория), чтобы подготовить их к коммиту (зафиксировать текущую версию). Если вы хотите удалить некоторые файлы из индекса перед коммитом, нужно удалить файлы из Git. Один из способов отменить отправку файлов в Git — выполнить команду git reset:

git reset [название коммита] — [путь до файла]

Любое действие можно отменитьЛюбое действие можно отменить

Вы также можете использовать команду rm для удаления файлов в Git:

git rm —cached [имя файла]

Шаг 6: Коммит изменений

После добавления указанных файлов в промежуточную среду зафиксируйте изменения с помощью команды git commit. Затем Git сохранит текущую версию файла. Вы можете просмотреть сохраненную версию в любой момент.

git commit -m «краткое содержание коммита»

Добавьте к коммиту сообщение — объясните, какие новые функции добавились или какие изменения были внесены. Коммиты остаются в репозитории, и они редко удаляются, поэтому объяснение того, что вы изменили, помогает другим разработчикам на проекте и вам самим отслеживать работу.

Шаг 7: Отмена коммита

Git позволяет пользователям отменить последний коммит. Однако другие разработчики могли уже скачать обновленный проект, в этом случае удаление приведет к конфликтам. Git предупреждает пользователя о них. Хотя большинство разрешаются автоматически, бывают случаи, когда Git не может устранить проблему.

Используйте команды revert и reset, чтобы отменить изменения и вернуться к предыдущему коммиту:

git revert [хеш коммита]

Хэш — это код, который идентифицирует каждый коммит. Получить его можно с помощью команды:

git log

Git позволяет отменять коммиты

Git позволяет отменять коммиты

В примере выше сначала выполнялась команда git log для получения хэша коммита, а затем он был отменен.

Шаг 8: Создание новой ветки

Первая ветка в репозитории git называется master — она является основной в проекте. Создание новой ветки означает создание копии проекта в определенный момент времени. Ветки позволяют внедрять новые функции при разработке, не внося изменения сразу в основную. Распространенным методом создания новой ветки является выполнение команды:

git branch [название новой ветки]

Отдельные ветки позволяют не вносить непроверенные изменения в основную версиюОтдельные ветки позволяют не вносить непроверенные изменения в основную версию

Шаг 9: Переключение между ветками

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

git checkout [название ветки]

Просто пропишите название нужной ветки, к которой хотите получить доступ.

Git позволяет легко переключаться между ветками

Git позволяет легко переключаться между ветками

Шаг 10: Переименование локальной или удаленной ветки

В Git вы можете переименовать локальную или удаленную ветку. Для переименования локальной используйте команду:

git branch -m новое название

Название локальной ветки измененоНазвание локальной ветки изменено

Переименовать удаленную ветку напрямую невозможно. Нужно сначала удалить старое название, а затем отправить новое имя ветки в удаленный репозиторий.

Шаг 11: Удаление локальной или удаленной ветки

Ветку можно удалить после объединения с основной, или если она была повреждена. Удалять можно как локальные, так и удаленные ветки.

Удаление локальной ветки не влияет на ветку, хранящуюся в облаке. Чтобы удалить локальную ветку, выполните команду:

git branch -d [название ветки]

Для удаления облачной ветки используйте команду:

git push [название проекта] —delete [название ветки]

В примере удалена локальная ветка

В примере удалена локальная ветка

Шаг 12: Установка Upstream Branch (локальная ветка слежения)

Отправка через upstream в Git означает, что вы отправляете файлы обратно владельцу репозитория. Используя команду git set upstream, вы можете выбрать направление для текущей локальной ветки. Команда также позволяет изменить удаленную ветку по умолчанию.

Команда git set upstream позволяет выбрать направление, в котором отправятся файлы веткиКоманда git set upstream позволяет выбрать направление, в котором отправятся файлы ветки

Шаг 13: Удаление удаленного репозитория

С помощью git remote можно подключиться к репозиторию, размещенному на удаленном сервере — GitHub, BitBucket, GitLab или другом. Однако со временем удаленный репозиторий может переместиться на другой хост, или член команды может прекратить работу над проектом. В этом случае удаленное подключение больше не требуется.

Есть несколько способов удалить его. Чаще всего используется команда:

git remote remove [удаленное название]

В следующем примере при запуске git remote -v отображаются доступные подключения origin и test-remote. После удаления test-remote и повторного запуска git remote -v единственным доступным подключением является origin.

Удалить удаленный репозиторий можно с помощью команды git remote removeУдалить удаленный репозиторий можно с помощью команды git remote remove

Шаг 14: Объединение веток

Git merge позволяет объединить несколько изменений в рамках одного коммита. Можно объединить две ветки, собрав независимые версии в одну. После слияния двух веток Git обновляет текущую, отображая изменения, однако целевая ветка остается не затронутой. Чтобы удалить устаревшую ветку, нужно выполнить команду git branch -d.

Например, вы хотите объединить ветку с новым функционалом с основной. Для этого нужно выполнить несколько шагов.

    1. Выполните команду git status, чтобы убедиться, что выбрана основная ветка — master. Если это не так, выполните git checkout master, чтобы переключиться на главную ветку.

Git checkout master поможет переключиться на основную ветку

Git checkout master поможет переключиться на основную ветку

    1. Выполните команду git fetch, чтобы отследить последние удаленные коммиты, и git pull, чтобы убедиться, что в ветке есть последние обновления.

Git pull проверяет наличие последних обновлений в ветке

Git pull проверяет наличие последних обновлений в ветке

  1. Запустите git merge X, где X — это название ветви, которую вы хотите объединить с основной.

Объединение веток позволяет включать новый функционал в основной продуктОбъединение веток позволяет включать новый функционал в основной продукт

Шаг 15: Создание запроса на изменение кода

Запрос на изменение кода или pull request информирует владельца репозитория, что он должен просмотреть изменения, внесенные в его код. Затем владелец может одобрить запрос и объединить ветки.

Если вы являетесь совладельцем или владельцем репозитория, вам не нужно создавать запросы на изменение кода. Тем не менее, вы можете сделать это, чтобы отслеживать обновления функционала по истории.

Для этого гайда был создан локальный файл readme. Для него будет выполнен pull request, чтобы подробно описать процесс. Нужно выполнить следующие действия.

    1. В Git Bash создайте пустой файл readme, выполнив команду touch readme.md.
    2. Создайте новую ветку, в которой файл будет модифицироваться, и переключитесь на нее с помощью команды:

git checkout -b create-readme-file

    1. Откройте файл readme в текстовом редакторе и добавьте текст. В этом примере используется текстовый редактор Nano для изменения файла в окне командной строки. Выполните команду nano readme.md.

В терминале есть собственный текстовый редактор

В терминале есть собственный текстовый редактор

    1. После сохранения файла перенесите его в индекс с помощью git add readme.md.
    2. Создайте коммит с помощью команды:

git commit -m «Добавлен файл readme»

    1. Отправьте изменения на GitHub:

git push origin create-readme-file

    1. Зайдите на свою страницу на GitHub. Теперь в вашем репозитории есть опция Create pull request с именем ветки, которая была создана в командной строке. Нажмите кнопку Compare & pull request.

Запросы на изменения репозитория рассматриваются на GitHubЗапросы на изменения репозитория рассматриваются на GitHub

  1. GitHub сообщит, можете ли вы объединить ветки и применить изменения. При необходимости добавьте комментарий к вашему запросу и нажмите Create pull request.

Создание pull request в GitHubСоздание pull request в GitHub

Теперь владелец репозитория, в данном случае вы, можете оценить изменения и принять или отклонить запрос на слияние веток. Запросы расположены во вкладке Pull requests на GitHub. Когда вы объедините ветки, удалить устаревшую версию можно по кнопке Delete branch. Это поможет поддерживать чистоту репозитория.

Шаг 16: Синхронизация изменения на GitHub и локально

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

git pull origin master

Команда обновляет локальный репозиторий и сообщает о внесенных на GitHub изменениях. В примере ниже выполняется переключение на главную ветку, после чего Git сам предупреждает, что нужно обновиться.

Git автоматически предлагает обновить локальный репозиторий

Git автоматически предлагает обновить локальный репозиторий

Выводы

Вы теперь знакомы с основными и продвинутыми функциями Git. Рекомендуется практиковаться в их использовании, чтобы лучше понимать, как они работают.

  • Git — это система контроля версий, которая позволяет нескольким программистам одновременно работать над продуктом.
  • Она позволяет отслеживать разные версии продукта и добавлять новые функции.
  • Git может использоваться с локальными и удаленными репозиториями.
  • Все изменения в коде отслеживаются, и в случае ошибок можно вернуться к предыдущей версии.

658 000

Leave a comment

Этот веб-сайт использует файлы cookie для улучшения вашего веб-опыта.