git - 在 git 中恢复大多数前 n 个提交

如何在 git 中恢复前 3 个提交?

例如:

git revert -n master~3..HEAD

这是正确的语法吗?

最佳答案

取决于你想要什么。如果你的代码还没有推送到 master,我更喜欢使用 git reset 来撤销提交,你可以使用 git reset --soft 来撤销提交,但是保留文件保持不变,如果您想更改提交顺序或修复较旧的提交(在将其推送到 master 之前),通常会发生这种情况。

git reset --soft HEAD~3

将恢复最后 3 次提交并保留代码(稍后编辑和重新提交)。

git reset --hard HEAD~3 

将恢复最后一次提交并放弃对文件的所有更改。

git revert 通常会创建一个新提交并完整保留 git 历史记录,这通常(在推送到 master 之前)是您不想要的,但如果代码已经推送到则它是完美的大师。

git revert HEAD~3

将创建一个新的提交来恢复最后三个提交。

https://stackoverflow.com/questions/32347710/

相关文章:

c# - 使用 UpdateAsync 方法 ASP.NET Entity Framework

oracle - 12c 和 ORA-01792 : maximum number of colum

amazon-web-services - AWS : How do I programmatica

css - 选择器属性中的手写笔迭代

shopify - Liquid 中的逗号分隔列表

html - 使用 ng-classes 样式输入占位符颜色样式

selenium - 如何 'click' 单选按钮 -> 需要 xPath

r - 在 R 中将字符串拆分为固定长度元素的最快方法

c# - 如何使用 LinQ 按值分组获取字典中的键列表

date - 同步系统时间和日期的批处理文件