JavaRush /Курсы /JAVA 25 SELF /Введение в Git: зачем нужен контроль версий

Введение в Git: зачем нужен контроль версий

JAVA 25 SELF
25 уровень , 0 лекция
Открыта

1. Проблема без контроля версий: почему просто копировать файлы — плохая идея

Давайте начнём с жизненной ситуации. Представьте, что вы работаете над своим Java-проектом. Всё идёт хорошо, пока не наступает момент "экспериментов". Вы решаете что-то поменять, но боитесь сломать рабочую версию. Что делать? Конечно, копировать проект!

В итоге на вашем диске появляются такие шедевры:

MyProject/
├── Main.java
├── Main_backup.java
├── Main_final.java
├── Main_final2.java
├── Main_точно_финал.java
├── Main_точно_точно_финал.java

Знакомо? А теперь представьте, что к проекту подключился ещё друг. Он тоже любит копировать файлы — только по-своему. Как понять, где самая свежая и рабочая версия? Как узнать, кто что поменял? Как вернуть всё, если эксперимент не удался?

Без контроля версий:

  • Легко потерять или перепутать рабочий код.
  • Невозможно "откатиться" к старой версии.
  • Сложно работать вдвоём или втроём.
  • Хаос и страх перед экспериментами.

Именно эти проблемы решают системы контроля версий — такие как Git.

Видео

Посмотрите лекцию от одного из ведущих менторов JavaRush Университета, который погрузит вас в мир Git — ключевой технологии для любого современного разработчика.

Видео состоит из двух частей:

  • Сначала вы разберете основы работы с Git через терминал. Этот фундаментальный подход поможет вам понять, что происходит «под капотом» системы.
  • Затем вы перейдете к практике в IntelliJ IDEA, где научитесь выполнять те же операции с помощью удобного графического интерфейса, как это ежедневно делают профессионалы.

Зеркало на Vimeo: Лекция 26 Git

2. Зачем разработчику нужен Git?

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

Основные понятия Git:

Репозиторий

Репозиторий (или "репо") — это место, где хранится вся история проекта, включая все изменения и версии файлов.

Коммиты

commit — это сохранённое состояние проекта. Каждый коммит в Git содержит информацию о том, какие изменения были внесены в проект, кем и когда. Коммиты образуют историю проекта и позволяют вернуться к любой предыдущей версии.

        gitGraph
        commit id: "1"
        commit id: "2"
        commit id: "3"
        commit id: "4"
        commit id: "5"
        commit id: "6"
    

Каждый коммит — это "снимок" проекта, который следует за предыдущим, формируя последовательную историю изменений.

Ветви

branch — это независимая линия разработки. По умолчанию Git создает ветку main. Вы можете создавать новые ветви для разработки новых фич или исправлений, а затем объединять их обратно в основную ветвь.

        gitGraph
        commit id: "1"
        commit id: "2"
        branch develop
        commit id: "3"
        commit id: "4"
        commit id: "5"
        checkout main
        commit id: "6"
        commit id: "7"
        merge develop
        commit id: "8"
        commit id: "9"
    

От основной ветки main "отпочковывается" ветка develop для параллельной разработки. После завершения работы изменения из develop сливаются обратно в main.

3. Основные команды Git (то, что под капотом)

Ниже — список основных команд для работы с Git через терминал. Важно понимать, какие команды лежат в основе всех операций. Однако мы будем придерживаться GUI-подхода и научимся выполнять все эти действия с помощью удобного графического интерфейса IntelliJ IDEA. Смотрите на эти команды как на то, что происходит "под капотом".

Команда Описание
git init Инициализирует новый Git-репозиторий в текущей директории.
git clone Клонирует репозиторий из URL в новую директорию.
git add Добавляет файлы в индекс для следующего коммита.
git commit Фиксирует подготовленные изменения в репозитории.
git push Отправляет изменения из локального репозитория в удалённый.
git pull Обновляет текущую ветку с последней версией из удалённого репозитория.
git branch Показывает, создаёт или удаляет ветки.
git merge Сливает изменения указанной ветки в текущую ветку.

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

        sequenceDiagram
        participant Рабочая директория
        participant Область индексации (Staging)
        participant Локальный репозиторий
        participant Удаленный репозиторий

        Рабочая директория ->> Область индексации (Staging): git add (Подготовить)
        Область индексации (Staging) ->> Локальный репозиторий: git commit (Сохранить локально)
        Локальный репозиторий ->> Удаленный репозиторий: git push (Отправить на сервер)
        Удаленный репозиторий ->> Рабочая директория: git pull (Скачать обновления)
    

4. Три места хранения кода

Когда вы будете пользоваться системой контроля версий для вашего кода, он, грубо говоря, будет храниться в трех местах:

1. Удаленный репозиторий

Это централизованное место для хранения вашего кода, обычно размещенное на таких сервисах как GitHub, GitLab или Bitbucket. Они обеспечивают централизованное хранение кода и являются основой для совместной работы. Удаленный репозиторий служит точкой интеграции для автоматизации процессов, таких как сборка, тестирование и развертывание приложений.

2. Локальный репозиторий

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

3. Рабочая директория

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

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

5. GitHub — ваше портфолио

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

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

6. Создание вашего первого репозитория на GitHub

Шаг 1. Зайдите на https://github.com и зарегистрируйтесь.

Шаг 2. Нажмите на кнопку New repository для создания нового репозитория.

Шаг 3. Задайте параметры для репозитория:

  1. Имя репозитория: придумайте осмысленное имя.
  2. Публичный или приватный: для учебных проектов лучше выбрать "Public", чтобы его могли видеть другие.
  3. Add a README file: обязательно поставьте эту галочку. README — это "лицо" вашего проекта.
  4. Add .gitignore: нажмите на выпадающий список и выберите шаблон для вашего языка.
  5. Choose a license: можно пропустить.
  6. Нажмите Create repository.

Шаг 4. Поздравляем, ваш первый удаленный репозиторий создан!

7. Установка и настройка Git

Хотя основы Git можно изучать через консольные команды (как показано в видео), в ежедневной работе 99% разработчиков используют именно удобные инструменты, встроенные в среду разработки. Наша цель — научить вас работать так, как это делают профессионалы.

Интерфейс для работы с Git во всех современных IDE от JetBrains — будь то IntelliJ IDEA для Java/Kotlin, Rider для C# или PyCharm для Python — практически идентичен. Это значит, что научившись работать с Git в одной среде вы сможете легко применять эти навыки в любой другой. Поэтому мы будем использовать IntelliJ IDEA как универсальный пример. Все, что вы увидите здесь, будет выглядеть и работать точно так же и в вашей любимой IDE.

Чтобы работать с Git на вашем компьютере, Git нужно сначала установить. Если вы используете IntelliJ IDEA, она, скорее всего, предложит вам установить Git автоматически, если он не найден в системе. Мы рекомендуем согласиться с этим предложением — это самый простой путь.

Закройте текущий проект, выбрав File > Close Project, и нажмите Clone Repository.

Если же вы хотите установить его вручную, воспользуйтесь официальным сайтом: https://git-scm.com/downloads.

8. Немного об истории: main vs master

Ранее ветка в Git по умолчанию называлась master. Однако в 2020 году сообщество разработчиков и крупнейшие платформы, включая GitHub, перешли на использование более нейтрального термина — main.

Это важно знать, так как в некоторых старых статьях или проектах вы все еще можете встретить упоминание ветки master. В наших лекциях и в современных проектах основной веткой всегда будет main.

Подробнее о переходе на main можно узнать по следующим ссылкам:

1
Задача
JAVA 25 SELF, 25 уровень, 0 лекция
Недоступна
Виртуальный Зверополис: Знакомство с голосами 🧬
Виртуальный Зверополис: Знакомство с голосами 🧬
1
Задача
JAVA 25 SELF, 25 уровень, 0 лекция
Недоступна
Персонализация питомцев: Присваиваем имена с super 🔼
Персонализация питомцев: Присваиваем имена с super 🔼
Комментарии (5)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Dilmurod Уровень 31
10 января 2026
Залайкайте, посчитаем сколько людей достигли этой прекрасной темы. Главное, не сдавайтесь
Юрий Уровень 26
3 декабря 2025
видео не грузиться. И с зеркала тоже. Как можно посмотреть данный урок?
Alex Blizz Уровень 26
12 января 2026
впн вам голубчик в помощь
Big198801 Уровень 28
10 ноября 2025
git commit -m "25 lvl reached"
Andrey Уровень 1
21 сентября 2025
25