我有两个提交:A和B。它们互相独立,包含不同的文件。我有两个分支:master
和branch1
:
master: A
branch 1: A, B
我需要删除
branch 1
并将提交 B
移动到 master
。我尝试使用 git cherry-pick B
来完成此操作,但它只是将 B 复制到 A 中,而我需要它具有相同的提交号码并且最重要的是要保留那里的注释!是否有任何方法?我已经查看了不同的答案,对我的情况不确定该怎么处理。将 branch1 合并到 master 是最简单的操作,也是我推荐的选项。但是,它会作为一个新的提交出现在主分支上,具有不同的提交 ID。
我们将从 branch1 中获取新的提交,并尝试将它们作为一个新的变更集合合并到 master 中,然后提交。这将保留 branch1 和 master 的历史记录。
从命令行中,您需要执行以下步骤:
1)首先检出您希望合并到的分支 中
git checkout master
2) 现在使用--no-ff选项将您的分支合并。
git merge --no-ff branch1
3)如果需要,您现在可以删除旧分支。
git branch -d branch1
另一种方法是执行变基。
通过将您的分支1变基到主分支,您将有效地重新播放分支1的提交历史记录到主分支上。之后,看起来好像你最初已经将提交'b'检入主分支,保留了你的提交ID。
同样,在命令行中,您需要执行以下步骤:
1)首先,检出您想要变基的分支 进入
git checkout master
2) 现在将您的分支变基到主分支
git rebase branch1