Минималистичное руководство по выживанию в Git - объяснение причин и ситуаций для каждой команды Git

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

Примечание: главная ветка = главная ветка. В основном это кодовая база, которая развертывается на сервере. Во избежание путаницы я буду называть это основной веткой в ​​этой статье.

I. ветка git и проверка git

(3) Если вы забыли имя созданной ветки, просто запустите git branch, чтобы вывести список существующих ветвей, созданных на вашем локальном компьютере.

(4) И наоборот, если вы создали слишком много избыточных ветвей, команда git branch -d <your branch name> удаляет указанную вами ветвь.

II. git добавить и git commit

git add <file 1> <file 2>
git commit -m <your commit message>

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

git add .

вместо этого, чтобы облегчить вашу жизнь.

III. git rebase

git rebase -i main

Короче говоря, указанная выше команда направлена ​​на разрешение конфликтов кода, которые у вас есть с основной веткой.

При совместной работе ожидайте, что хотя бы еще один сотрудник будет работать над той же кодовой базой.

Итак, вспомните, что вы работали над SNAPSHOT кодовой базы. С того момента, как вы «расширились» до момента, когда вы будете готовы развернуть свой код, другие сотрудники могли внести другие изменения, которые не отражаются в вашей локальной базе кода. Следовательно, запуск git rebase -i main будет запускать вашу кодовую базу через каждую фиксацию кода, которая была сделана вашей командой до самой последней фиксации, сделанной в основной ветке в ее последнем развертывании. Есть 2 возможных сценария:

Сценарий (1) - код разрешается самостоятельно, никаких действий не требуется

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

Сценарий (2) - Возникают конфликты кода. Пора вносить изменения вручную.

Хотя на первый взгляд вывод терминала Git кажется пугающим, просто имейте в виду, что вывод здесь - это способ Git сигнализировать о двух вещах: (1) он в настоящее время находится в интерактивном режиме; (2) Вот список изменений кода, которые вы сделали (и которые необходимо исправить).

Введите : x (двоеточие (:), а затем букву «x») и нажмите клавишу [Enter / Return], чтобы Git сделал свое дело.

В какой-то момент ожидайте, что будет отображаться следующий аналогичный вывод:

и в вашей среде IDE / текстовом редакторе для типа конфликта I Git укажет, какие строки кода находятся в прямом конфликте, с помощью следующих пометок:

Пояснение. Строки кода между «HEAD» и «›››››››» принадлежат строки кода другой версии. Чтобы объединить это с вашими изменениями, измените код, чтобы сохранить предыдущие функции при внесении новых изменений.

⚠ Очень важно: запустите приложение хотя бы один раз, чтобы убедиться, что код исправлен без проблем. Если в результате внесенных вручную изменений был поврежден код, будет намного сложнее исправить этот сбой («отладку»), когда вы выйдете из режима перебазирования.

Наконец, после того, как вы закончите вносить изменения, приступайте к запуску:

git rebase --continue

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

IV. git merge

git checkout main
git merge <your branch name>

Так что, если вы дошли до этого этапа, похлопайте себя по плечу, потому что вы только что прошли через самую сложную часть. После переключения на основную ветвь путем запуска git checkout main, git merge myBranch перезаписывает кодовую базу в основной ветке для синхронизации с вашим измененным кодом.

В. git push

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

git push origin main

И на данный момент мы только что завершили 1 раунд управления версиями кода с помощью Git 😀

Две важные команды Git для проверки кода

Команда 1 - git status

git status

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

Команда 2 - gitk

Для визуального обзора запустите:

gitk

Удивительно, но это одна из наименее упоминаемых команд Git в сообществе.

- Конец команд Git -

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

В конце концов, все дело в том, чтобы найти поток Git, который больше всего соответствует вашим настройкам!

Большое спасибо за чтение и, пожалуйста, подписывайтесь на меня на Medium, если вы нашли эту статью полезной ❤ Если приведенные выше команды Git не очень применимы, то вот другие статьи, на которые вы могли бы вместо этого сослаться 😀:

Автор Сонер Йилдирим:



Автор: Dr. Варшита Шер :