git - 通过修改提交进行差异化

标签 git git-amend

我想知道是否有可能显示两次提交之间的 diff 其中之一是 amend ?换句话说,git 是否将修改后的提交保存在某个地方的历史记录中?

最佳答案

修改后的提交与任何其他提交没有什么不同。从这个意义上说,完全有可能区分“正常”提交和修改后的提交。

In other words does git save amended commits in history somewhere?

没有某个列表包含所有已修改的提交,没有。修改后的提交就像所有其他提交一样存在于历史记录中。

当你修改一个提交时,它基本上被删除并被一个新的(它也得到一个新的提交哈希)替换,这个新的包含原始提交的更改+修改后的更改。

git reflog 中,您可以看到您最近的操作,并且确实显示了提交的修改。来自那里的引用可用于例如撤消 git commit --amend。另见 How to undo "git commit --amend" done instead of "git commit"有关详细信息。

关于git - 通过修改提交进行差异化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33563236/

相关文章:

git - 如何查看一个分支是否已经 merge 到另一个分支?

git - 为什么 git commit --amend 会更改散列,即使我没有进行任何更改?

Git:如何编辑/改写 merge 提交的消息?

git - 如何修改现有的、未推送的提交消息?

Git:允许修改提交而不删除历史记录

git - 在没有打开编辑器窗口的情况下修改 Mercurial 提交?

git - 使用 Git 如何查找本地和远程之间的更改

git - 如何将一组 mercurial 存储库转换为 git 存储库?

objective-c - 如何让 podspec 尊重 "head:"论点?

git - 断开连接 : Protocol error: expected packet type 31, 得到 94