注意:如果您已经对 rebase 有广泛的了解,那么使用下面的一个衬垫来快速 rebase。
解决方案:
假设你在你的工作分支上,并且你是唯一一个在工作的人。
git fetch && git rebase origin/master
解决任何冲突、测试您的代码、提交新的更改并将其推送到远程分支。
~: For noobs :~
以下步骤可能会对 git rebase 的新手有所帮助并希望轻松完成此操作
步骤 1: 假设此时 YourBranch 上没有提交和更改。我们正在访问 YourBranch。
git checkout YourBranch
git pull --rebase
发生了什么?提取其他开发人员在您的分支上所做的所有更改,并在此基础上重新调整您的更改。
第 2 步:解决出现的任何冲突。
第 3 步:
git checkout master
git pull --rebase
发生了什么? 从远程 master 中提取所有最新更改并将本地 master 重新定位到远程 master 上。我始终保持远程主机清洁并准备好发布!而且,更喜欢只在本地的 master 或分支上工作。我建议这样做,直到您掌握 git 更改或提交。
注意:如果您不维护本地 master,则不需要此步骤,而是可以直接在本地分支上直接执行 fetch 和 rebase 远程 master。正如我在开始的单步中提到的那样。
第 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 中的提交消息或如果解决了任何冲突?然后你需要将你在本地 repo 中解决的更改推送到 YourBranch 的远程 repo
雅虎……!您已成功完成变基。
您可能也在考虑这样做:
git checkout master
git merge YourBranch
何时以及为什么?如果您和其他合作开发者进行了更改,请将您的分支合并到 master 中。当您以后想在同一分支上工作时,这会使 YourBranch 与 master 保持同步。
~: (๑ơ ₃ ơ)♥ rebase :~