git - 还原我所做但尚未推送的所有内容
问题描述
我正在寻找还原未推送到远程分支的所有内容。我在 StackOverflow 上的这个git revert -m 1 <merge commit hash>
问题中使用过,但它只是恢复一个我没想到的提交。在我的项目中,一个合并
一个合并提交
另外两个提交
我想通过使用某种方法来恢复所有内容。任何帮助将不胜感激。
解决方案
首先列出最后 5 次提交,假设并获取您要保留的最后一次提交的哈希:
git log -n5
然后对该提交进行硬重置:
git reset --hard <hash-of-last-commit-to-keep>
笔记!此方法将销毁您不想保留的提交,它不会创建还原提交。
推荐阅读
- apache-flink - 为什么 Flink (RESTful) 作业的资源在启动集群时会受到工作目录的影响?
- content-management-system - 什么是 Prismic 中“切片”的 Contentful 等价物?
- hadoop - 工作节点指标未显示在浏览器(普罗米修斯)中?
- python-3.x - 向量化 scikit-learn/Python3 中的句子列表列表
- python - 使用 pandas/python 检查字典中是否不存在数据框的值
- flutter - 如何在flutter项目中使用http拦截器?
- powershell - 通过所有 AD 计算机对象使用 Powershell Get-ItemProperty
- python - 模型没有预测正确的结果 keras tensorflow python
- assembly - 编程语言可以有自己的调用约定吗?
- locking - 如何实现多生产者多消费者单缓冲区模型?