Bitbucket - 将分支与另一个分支同步
Bitbucket - Syncing Branch with another Branch
这可能是 How to keep a git branch in sync with master 的副本(我假设我可以用另一个分支替换 Master),但重要的是它可以工作并且不会以错误的方式合并所以我需要当然。
场景
有一个名为 v1
的分支,我创建了一个名为 v1_adminui
的分支。我已经对我的分支 v1_adminui
进行了大约 10 次提交,但是在 v1
中对项目的另一部分进行了重大改进,所以我想将更改与我当前的分支同步。
我相信以下内容可以做到:
git checkout v1
git pull
git checkout v1_adminui
git merge v1
请您确认这是否正确?如果没有,我们将不胜感激如何完成此任务。
因为只有你在这个分支上工作,你应该使用 rebase
而不是 merge
。
# Get the base branch
git checkout v1
# Pull in any changes to make sure you have the latest version
git pull
# Check out your branch
git checkout v1_adminui
# Rebase your changes on top of the v1 changes
git rebase v1
# Optionally push your rebased branch
git push origin v1_adminui
在最后一步推送时,您可能必须使用 --force
选项。由于您正在使用 rebase 重写分支的历史记录,因此远程分支将具有不同的历史记录。只有在没有其他人使用此分支时才这样做!
这可能是 How to keep a git branch in sync with master 的副本(我假设我可以用另一个分支替换 Master),但重要的是它可以工作并且不会以错误的方式合并所以我需要当然。
场景
有一个名为 v1
的分支,我创建了一个名为 v1_adminui
的分支。我已经对我的分支 v1_adminui
进行了大约 10 次提交,但是在 v1
中对项目的另一部分进行了重大改进,所以我想将更改与我当前的分支同步。
我相信以下内容可以做到:
git checkout v1
git pull
git checkout v1_adminui
git merge v1
请您确认这是否正确?如果没有,我们将不胜感激如何完成此任务。
因为只有你在这个分支上工作,你应该使用 rebase
而不是 merge
。
# Get the base branch
git checkout v1
# Pull in any changes to make sure you have the latest version
git pull
# Check out your branch
git checkout v1_adminui
# Rebase your changes on top of the v1 changes
git rebase v1
# Optionally push your rebased branch
git push origin v1_adminui
在最后一步推送时,您可能必须使用 --force
选项。由于您正在使用 rebase 重写分支的历史记录,因此远程分支将具有不同的历史记录。只有在没有其他人使用此分支时才这样做!