择优挑选并恢复提交
Cherry-Pick Commit 将一项提交的更改作为新提交复制到当前分支,例如 git cherry-pick。 Revert Commit 添加了一个撤消提交的新提交,例如 git revert:收回已推送内容的安全方法。
免费已更新
免费使用 GitTree:登录后的所有本地 Git 功能。
开始之前
- 检查应该接收更改的分支(对于挑选)或保存要撤消的提交(对于恢复)的分支。
在哪里可以找到它
- 右键单击图表中的提交:Cherry-Pick Commit 和 Revert Commit。
- 按住 Ctrl(在 Mac 上为 ⌘)选择多行,然后右键单击:Cherry-Pick Commits。
| 行动 | macOS | Windows 和 Linux |
|---|---|---|
| 首先找到提交 | ⌘F | Ctrl+F |
步骤
精挑细选或恢复
选择 Cherry-Pick Commit 或 Revert Commit。当每个项目无法应用时,例如在您所在的提交上,每个项目都会显示为灰色,并显示原因。
检查结果
GitTree 表示 Cherry-picked. 或 Reverted.,新提交位于分支的顶行。
预期结果
您的分支有一个新的提交,其中包含复制的更改,或者与还原的更改相反的提交。原始提交未受影响。
合并提交
合并提交有两个父级,因此 GitTree 询问其更改是根据哪一个来衡量的:First parent (the branch merged into)(通常的选择)或 Second parent (the branch merged in)。
当发生冲突时
如果更改未完全应用,横幅会显示 Cherry-picking … onto … 或 Reverting … on …。解决文件,然后 Continue 或 Abort… 返回到原来的位置(解决合并冲突)。
如果出现问题
Cherry-Pick Commit 呈灰色显示:“这是您正在进行的提交。”
该提交已经在您的分支上。检查应该首先收到它的分支。
问题
恢复还是重置?
恢复会添加提交并且不会更改历史记录,因此在推送的分支上是安全的。 重置 将分支移回并删除其中的提交:仅在其他人没有的工作中使用它。
