Git Cherry Pick和Git Revert之间有什么区别?

Git Cherry Pick和Git Revert之间有什么区别?,git,git-revert,git-cherry-pick,Git,Git Revert,Git Cherry Pick,我仍然觉得git revert的行为有些混乱。在经历了巨大的痛苦和误解之后,我了解到git revert否定了一个特定的提交,而不是返回到那个提交。到目前为止,我还没有使用git cherry pick 您能详细介绍一下这两个git命令吗?您希望何时以及如何使用它们?git cherry pick类似于“将指定的提交转换为补丁并在此处应用此补丁” git revert类似于“将指定的提交转换为补丁,'invert'此补丁(如patch-R)并在此处应用” 这两个命令都可能导致冲突 Cherry

我仍然觉得git revert的行为有些混乱。在经历了巨大的痛苦和误解之后,我了解到git revert否定了一个特定的提交,而不是返回到那个提交。到目前为止,我还没有使用git cherry pick


您能详细介绍一下这两个git命令吗?您希望何时以及如何使用它们?

git cherry pick
类似于“将指定的提交转换为补丁并在此处应用此补丁”

git revert
类似于“将指定的提交转换为补丁,'invert'此补丁(如
patch-R
)并在此处应用”

这两个命令都可能导致冲突

Cherry pick用于未合并(当前提交中的父链接无法访问)提交。还原通常用于合并的提交


撤消还原提交需要进行另一次还原提交(导致提交消息,如“revert of‘revert of…’”),而不是还原提交(因为它被视为已合并)。

在请求复制此处的文档之前,请先尝试搜索Internet。这里是“git命令”搜索的Google结果第一页的结果:快速参考和完整命令参考-我的评论是指第一次编辑之前的原始问题“你能详细说明每个git命令吗…”,如果你的意图是Emil在编辑中修正的,那么很抱歉。@MBO:是的,我的原始问题是:“您能否详细说明每个git命令,以及您希望在何时以及如何使用它?“我看了谷歌搜索多次,确实有4本关于git的书。使用git revert一开始真的很痛苦,因为在1-2个月的时间里,我理解它意味着恢复到特定的提交,我无法理解它产生的奇怪行为。我仍然觉得有点困惑,特别是如果HEAD和我要恢复的提交之间存在临时提交。