提交对 Git 分支的更改
本教程将了解如何将提交保存到 Git 中的新分支或现有分支。
本文介绍了如何将提交移至:
- 一个新的分支
- 现有分支
你经常会发现自己将相同的暂存更改提交到不同的分支。Git 允许你方便地执行此操作,如下所示。
在 Git 中移动提交到一个新的分支
本节将了解如何将工作区分支中的提交移动到新分支。
创建一个包含所有提交的新分支。使用 git branch
命令初始化一个新分支。
git branch <new-branch>
上面的命令将创建一个分支,一个 new-branch
。
使用 git reset
命令将提交重置为上次更新。
git reset --keep HEAD~N
我们使用 --keep
选项来备份未提交的更改。
在 Git 中将提交移动到现有同步分支
为了更好地理解这个特性,我们将使用一个实际的例子。我们提交到 <wrong branch>
而不是 <right branch>
。
假设两者是同步的,你如何将提交带到 <right branch>
?
使用 git checkout
命令导航到现有分支。
git checkout <right branch>
使用 git merge
命令移动提交。
git merge <wrong branch>
要删除错误的提交,请转到 <wrong branch>
。
git checkout <wrong branch>
使用 git reset
命令恢复提交。
git reset --keep HEAD~N
将提交移动到 Git 中的现有分支
让我们用一个实际的例子来更好地理解这一点。如果你想在不合并分支的情况下移动一个特定的提交,你会怎么做?
在下面的示例中,我们将把一个提交从 <wrong branch>
移动到 <right branch>
。
切换到 <right branch>
。
git checkout <right branch>
使用 git cherry-pick
命令和提交的哈希来移动它,如下所示。
git cherry-pick <sha1-commit-hash>
返回到错误的分支
并使用 git reset
命令删除提交。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。