严重的错误,Git怎么让我回到过去?

git reflog

你会看到你过去在所有分支上做的所有事情!每一个动作都有一个目录编号:HEAD@{index}找到你犯错之前的那条记录

git reset HEAD@{index}

你已经回到犯错之前了,你可以用这个恢复误删的文件,或者,你做了一些修改,结果事情搞得一团糟,你可以秒回之前的状态。如果你做了一次不爽的合并(merge),也可以这样反悔,总之你能瞬间回到事情都还OK的时候。

我提交了,但立马想要做一个很小的修改!

没问题,你直接先修改好,然后:

git add .    # 或添加特定文件
git commit --amend

在出现的窗口里,编辑提交说明,或者维持不变,现在你最新的提交里已经包含了这个小修改

其实你也可以把小修改当作一次新的提交,然后用rebase -i把它们合到一块儿,但上面的方法要快一百万倍。

刚才的提交说明写错了,怎么修改?

git commit --amend

在出现的窗口里编辑提交说明

我把应该提交给新分支的东西,提交给了主分支!

从当前状态的主分支上新建一个分支

git branch the-new-branch-name

取消主分支上最新的一次提交

git reset HEAD~ --hard
git checkout the-new-branch-name

好了,你的提交现在就只在这个新分支上

注意:如果你已经推送到了远程分支,那一切都晚了。

那第二行应该是git reset HEAD@{number},而不是HEAD~,以回到最初犯错的时间和地点。

我居然提交到了错误的分支上!

取消最新的提交,然后保留现场原状

git reset HEAD~ --soft
git stash

切换到正确的分支

git checkout name-of-the-correct-branch
git stash pop
git add .    # 或添加特定文件
git commit -m "你的提交说明"

现在你已经提交到正确的分支上了

我想用diff检查差别,但什么也没有?

git diff --staged

本文由Web前端精髓为您提供

快速解决Git最常见问题相关推荐

  1. VS Code 1.69 发布:允许快速解决 Git 合并冲突

    Visual Studio Code 1.69 现已发布,一些主要亮点更新包括: 3-way merge editor- 在 VS Code 内解决合并冲突. 合并编辑器允许你快速解决 Git 合并冲 ...

  2. 快速解决git did not exit cleanly (exit code 1) 错误

    当往远程仓库进行push操作的时候出现 git did not exit cleanly (exit code 1) 错误 解决办法: 第一步:将远程仓库设置为公开 第二步:重新进行推送

  3. git pull 代码库时提示冲突需Merge 快速解决代码同步遇到的冲突问题 so easy的方法

    前言 git pull 代码库时提示冲突需Merge 快速解决代码同步遇到的冲突问题 so easy的方法. 问题 1.> git pull origin master 提示信息:error:  ...

  4. 【能力提升】SQL Server常见问题介绍及快速解决建议

    前言 本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题.这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架. 下面一些问题是 ...

  5. SQL Server常见问题介绍及快速解决建议

    前言 本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题.这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架. 下面一些问题是 ...

  6. Python 常见问题 之 python 安装包下载安装速度慢 的 快速解决方法(之一)

    Python 常见问题 之 python 安装包下载速度慢 的 快速解决方法(之一) 目录

  7. 用快捷键快速解决QQ空间的几个常见问题(转)

    用快捷键快速解决QQ空间的几个常见问题(转) QQ空间(Q-Zone)很受大家欢迎.在平时的操作中常遇到的一些问题可以用快捷键的方式快速解决.请参考以下操作: 1. 如果你的播放器或者装饰挡住了自定义 ...

  8. 如何解决Git中的合并冲突

    如何解决Git中的合并冲突? #1楼 对于想要半手动解决合并冲突的Emacs用户: git diff --name-status --diff-filter=U 显示所有需要解决冲突的文件. 依次打开 ...

  9. 用beyond compare解决git不能同步项目重新下载项目然后就行对比解决冲突

    用beyond compare解决git不能同步项目重新下载项目然后就行对比解决冲突              这几天一直由于之前的的项目实现的功能没有提交,git客户端我用的是smartGit,然后 ...

最新文章

  1. EPR | 制药业的AI:利用宝贵的资源
  2. 日本地铁公益广告 拒绝三俗!
  3. FPGA 起脚nCEO/IO管教设置问题
  4. pl/sql中文显示为乱码解决
  5. 【ArcGIS风暴】捕捉VS经典捕捉,谁更有用武之地?
  6. linux l显示详细信息,fdisk -l显示信息详解
  7. 【MyBatis框架】高级映射-延迟加载
  8. Linux 异步通知
  9. ps海报合成教程_PS教程:别不信,你也能合成游戏场景!
  10. rand函数怎么避免重复_Excel常用的计算统计函数
  11. Hibernate框架概述SSH框架工作原理以及流程
  12. 模仿LordPE写了个PE解析工具
  13. DWG文件打开速度太慢怎么办!
  14. java基本语法大全(全)_Java基本语法大全(全)
  15. 安卓自定义Toast的原理及实现
  16. MongoTemplate地理位置查询(标准)
  17. js 鼠标悬浮div显示tip,离开tip消失,不用单独写鼠标离开事件
  18. 三星很陶醉:爷会成为智能手机之王
  19. 火线 地线 零线 漫谈
  20. office在线word、excel预览

热门文章

  1. 响应式布局技术:App如何适配不同尺寸的设备
  2. 基于代码、社区,两步成为开源赢家!
  3. 求锤得锤,你要的一致性 hash 来了! | 附代码
  4. 赠书 | 如何建设数据中台?看这份企业数据能力测评就够了!
  5. 5G加速向纵深发展 中国电信联合产业链开展“5G创新终端商用合作行动”
  6. 支付宝集五福下周一开始;iPhone 面世 13 周年;Laravel 6.10.0 发布 | 极客头条
  7. 阿里 20 亿美元收购网易考拉;苹果回应误发七倍工资;VS Code 1.38 发布 | 极客头条...
  8. const 并不能加快 C 代码的运行速度?
  9. 常见六大 Web 安全攻防解析 | 技术头条
  10. 这个使用 Python 编写的 PDF 神器你值得拥有!