【发布时间】:2019-12-05 09:28:47
【问题描述】:
假设我有一个还原 "Revert "Commit B"",有没有办法获得 "Commit B" 的 SHA-1?
我希望是否有可能像在合并中一样获得任何还原提交的 SHA-1。由于合并提交的父节点是两个合并提交的 SHA-1。
【问题讨论】:
假设我有一个还原 "Revert "Commit B"",有没有办法获得 "Commit B" 的 SHA-1?
我希望是否有可能像在合并中一样获得任何还原提交的 SHA-1。由于合并提交的父节点是两个合并提交的 SHA-1。
【问题讨论】:
git revert 命令是为了方便而提供的功能。它找出目标提交的变化,反向应用它并创建一个新的提交。与任何其他常规提交相比,新提交在技术上对 Git 来说并不特别,尽管它的更改与恢复的提交完全相反。
尽管如果你直接使用git revert <commit>,自动生成的提交消息确实包含源提交的SHA,例如:
commit fdcfd9f4c59a686651b7935c188917099f653e16
Author: iBug <redacted>
Date: Thu Dec 5 09:31:53 2019 +0000
Revert "Limit landing screen height"
This reverts commit 444e34cceffec12716af61dd94d0ca62a35e2564.
但是,如果您编辑了提交消息并从中删除了 SHA,那么您可能很不走运,不得不另谋出路。
【讨论】: