Примечание: Если у вас уже есть широкие знания о перебазировании, тогда используйте быструю перебазировку под одним вкладышем.
Решение:
Предполагая, что вы работаете в своей ветке, и вы единственный, кто работает над ней.
git fetch && git rebase origin/master
Разрешение любых конфликтов, тестирование кода, принятие и отправка новых изменений в удаленную ветвь.
~: For noobs :~
Следующие шаги могут помочь любому, кто не знаком с git rebase
и хочет сделать это без хлопот
Шаг 1: Предполагая, что в данный момент в YourBranch нет изменений и изменений, которые необходимо внести в YourBranch. Мы в гостях у YourBranch.
git checkout YourBranch
git pull --rebase
Что случилось? Извлекает все изменения, сделанные другими разработчиками, работающими в вашей ветке, и отменяет ваши изменения поверх него.
Шаг 2: Разрешение любых возникающих конфликтов.
Шаг 3:
git checkout master
git pull --rebase
Что случилось? Извлекает все последние изменения с удаленного мастера и восстанавливает локальный мастер на удаленном мастере. Я всегда держу удаленный мастер в чистоте и готовлюсь к выпуску! И предпочитаю работать только на мастере или филиалах локально. Я рекомендую делать это до тех пор, пока вы не получите руку на изменения или коммиты git.
Примечание. Этот шаг не требуется, если вы не обслуживаете локальный мастер, вместо этого вы можете напрямую выбрать и перебазировать удаленный мастер в локальной ветке. Как я уже упоминал в одном шаге в начале.
Шаг 4: Разрешение любых конфликтов, которые возникают.
Шаг 5:
git checkout YourBranch
git rebase master
Что случилось? Произошла ребаз на мастере
Шаг 6: Разрешение любых конфликтов, если они есть. Используйте git rebase --continue
, чтобы продолжить перебазирование после добавления разрешенных конфликтов. В любое время вы можете использовать git rebase --abort
, чтобы прервать ребаз.
Шаг 7:
git push --force-with-lease
Что случилось? Отправка изменений на удаленный YourBranch. --force-with-lease
будет проверять, есть ли какие-либо другие входящие изменения для YourBranch от других разработчиков, пока вы делаете ребазинг. Это супер полезно, а не силовой толчок. В случае каких-либо входящих изменений, затем загрузите их, чтобы обновить локальный YourBranch, прежде чем отправлять изменения.
Зачем мне нужно вносить изменения? Чтобы переписать сообщение коммита в удаленном YourBranch после правильной перезагрузки или если какие-либо конфликты разрешены? Затем вам нужно отправить внесенные вами изменения в локальное хранилище в удаленное хранилище YourBranch
.
Yahoooo ...! Вы успешно завершили ребазинг.
Вы также можете заняться:
git checkout master
git merge YourBranch
Когда и почему? Слияние вашей ветки с master, если это сделано с изменениями, внесенными вами и другими со-разработчиками. Что делает YourBranch актуальным с master, когда вы захотите поработать над той же веткой позже.
~: (๑ơ ₃ ơ)♥ rebase :~