Цель этой статьи — познакомиться с основами Git.

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

Установка Git

Mac:

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

$ git --version

Другой способ установить Git — использовать Homebrew в вашем терминале. Следуйте этим инструкциям, чтобы установить и проверить установку Git:

$ brew install git
$ git --version

Окна:

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

> git --version

Первая настройка Git

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

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

$ git config --global user.name "Yagnik Kardani"
$ git config --global user.email "[email protected]"

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

$ git config --global user.name
$ git config --global user.email

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

Начиная

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

Инициализировать репозиторий (Repo)

Репозиторий Git — это виртуальное хранилище, которое позволяет вам сохранять версии кода вашего проекта. $ git init — это команда для инициализации нового репо. Выполнение этой команды создаст новый подкаталог git и новую основную ветку в вашем текущем рабочем каталоге.

Инициализировать новое репо в существующем проекте

Предположим, у вас уже есть проект, и вы хотите инициализировать внутри него новый репозиторий. Сначала перейдите в корневую папку существующего проекта, а затем выполните команду $ git init.

Клонирование существующего репо

Если проект уже настроен в удаленном репозитории, например, на Github, и вы хотите клонировать его в свою локальную среду, вы можете клонировать удаленный репозиторий с помощью команды $ git clone <repo url>.

Сохранение изменений

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

Например, если вы создали новый файл с именем simple.txt и хотите сохранить это изменение в своем репозитории, выполните следующие команды:

$ cd /path-to-project
$ git add simple.txt
$ git commit -m "added simple.txt to my project"

Вы также можете использовать команду $ git add --all, чтобы добавить все изменения, которые вы сделали в своем проекте. В общем случае вы обычно клонируете удаленное репо в свой локальный каталог. Если вы клонировали удаленный репозиторий, потребуется отправить все изменения, внесенные вами локально в ваш проект.

Вы будете использовать команду $ git push для отправки изменений в удаленный репозиторий.

Git-ветка

Ветвление — это функция, доступная в большинстве современных систем контроля версий. Как разработчик, ветвление будет частью вашего повседневного процесса разработки. В соответствии с передовым опытом в репозитории всегда будет основная ветвь с именем «master»branch. Вы никогда не будете вносить какие-либо изменения непосредственно в основную ветку — независимо от того, насколько она велика или мала.

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

Есть несколько важных команд для ветвления Git:

$ git branch
// This will list all available branches in your repo.
$ git branch new-branch
// This will create a new branch named new_branch.
$ git branch -d new-branch
// This will delete 'new_branch'. You can not delete if it has 
// unmerged changes.
$ git branch -D new-branch
// This -D option will force delete your branch if you couldn't use 
// above safe option.
$ git branch -m renamed-branch
// This will rename your current branch to the 'renamed_branch'
$ git checkout test-branch
// This will switch the current branch to the 'test-branch'

Git слияние

В наиболее частых случаях использования $ git merge используется для объединения двух ветвей. Коммиты слияния уникальны по сравнению с другими коммитами тем, что у них есть две родительские коммиты. Перед выполнением слияния необходимо выполнить несколько подготовительных шагов, чтобы слияние прошло гладко.

  • Подтвердите принимающую ветвь, которая является вашей текущей ветвью. При необходимости вы можете использовать команду $ git checkout для переключения на принимающую ветвь. то есть мастер или основная ветвь.
  • Получить последнюю фиксацию — принимающая ветвь и ветка слияния должны быть обновлены до последней фиксации. Затем используйте команду $ git fetch, чтобы получить последние удаленные коммиты. Затем убедитесь, что в главной или основной ветке установлены последние обновления, выполнив команду $ git pull.
  • Наконец, слияние можно инициировать, выполнив $ git merge feature-branch, где feature-branch — это имя ветки, которая будет объединена с принимающей веткой, т. е. master или main.

Заключение

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

Не забудьте ознакомиться с другими частями этой статьи, такими как Файл конфигурации Git и Конфликт слияния Git.





Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Посетите наш Community Discord и присоединитесь к нашему Коллективу талантов.