git的笔记(各种类型的后悔药:撤销你的修改)
2016-05-11 17:33
465 查看
之前说过当你已经提交了你的修改,提交到了版本库里,想要回到之前的版本,可以使用
git reset HEAD^ git reset HEAD^^ git reset 88eb //版本号
你还可以使用git log或者git reflog来查看历史版本
但是当你还未进行提交,仅仅是修改了工作区的文件或者已经add到暂存区之后又进行了修改的时候,如果想撤销你的修改的时候,你可以使用以下命令:
git checkout --file//撤销未提交的修改
以上修改了两种情况:
1.还未进行add命令(其实这样的情况如果你还记得修改了哪里,你可以手动修改就好了)
2.已经add到暂存区里面了的修改,但是又进行了工作区的修改
当你已经add到暂存区里,但是你后悔了的时候,
git reset HEAD filename
一行命令就可以使你的暂存区的东西回退到上个版本
剩下的,你就可以去撤销工作区的修改
git checkout --file
撤销工作区里的修改
好了,哦了,一切都利索了:P
总结一下
谁都有抽的时候,当你在add之前发现自己抽了,想把自己抽回来:
git checkout --file//撤销工作区的修改
当你add之后,但是发现自己又抽风的修改了你的工作区的文件,还想把自己抽回来:
git checkout --file//撤销工作区的修改
但是当你add之后,发现你自己之前的提交是自己抽了:
git reset HEAD filename//清除暂存区的修改 git checkout --file//清楚工作区的修改
但是当你commit之后,发现自己之前抽了:
git reset HEAD^//回退到上个版本 git reset HEAD~10000//回退到上一万个版本 git reset 版本号 git log / git reflog //可以使用这两个命令查看版本号
好吧,我承认上面的比喻确实有点抽象,可能是我抽了吧:P
相关文章推荐
- mysql 修改密码
- sqlite常用语法详细介绍
- C语言编程的进制问题问题
- 【转】linux的nohup命令的用法
- 实战----整合项目
- configs for postgresql restart and postgresql reload
- ios关于用xib创建的cell 自动返回cell的高度问题!
- C# SQL语句参数化,通过包含like关键字的子句查询无结果问题
- 让人感觉点击到的圆角按钮
- Redhat 7.2 中文显示及中文输入法设置
- 树莓派3利用create_ap软件变身无线AP
- Hibeinate: Could not determine type for: java.util.List, at table: address_inf, for columns: [org.hi
- 程序员必读的书,StackOverflow 创始人推荐Recommended Reading for Developers
- 本地ie版本大于7.0,MsHtml中get_userAgent获取UA为MSIE7
- ThinkPHP查询数据库表中包含在某一结果集中的所有内容
- [开源 .NET 跨平台 数据采集 爬虫框架: DotnetSpider] [一] 初衷与架构设计
- java内存溢出和内存泄露
- 盖得化工--采集所有公司详细信息
- fragment实现手势识别
- Android 发送广播传送数据