博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Git的checkout, reset, revert
阅读量:7071 次
发布时间:2019-06-28

本文共 648 字,大约阅读时间需要 2 分钟。

不管是修改还是新建文件,都必须通过git add把这次修改从工作区加到暂存区;
commit只是提交暂存区的修改,还没add到暂存区处于工作区的修改是不会commit的;
 
git checkout可以将工作区的文件用暂存区的文件去替换掉,用于没commit之前;
 
git reset —mixed可以将commit到本地仓库的修改记录回滚,并删掉暂存区的文件,但是工作区的修改还在,相当于只修改了文件,没有 add到暂存区,也没有commit到仓库,用于没push之前;
git reset —soft,只回滚记录,不删掉暂存区的文件;
git reset —hard,回滚记录,删除暂存,并删除本地修改,相当于全部回滚。
 
                    工作区—>暂存区—>本地仓库
hard               回滚         回滚         回滚
mixed             no            回滚         回滚
soft                 no             no           回滚
checkout        覆盖          no            no 
 
git revert用于把远程仓库覆盖本地仓库
 
reset会删掉之前的记录,revert保留记录,并生成依次新的commit;
 
revert只会revert针对当前一条记录重新做一次commit,并不会把这个记录之后提交的记录revert;
 
可以revert revert;
 
revert某条记录的时候,别人之后提交的记录不会丢,但是别人提交的代码可能被你这次revert给弄丢掉;
 
不要merge之后revert; 

转载于:https://www.cnblogs.com/mosthink/p/6042438.html

你可能感兴趣的文章
spark 是什么(一)
查看>>
C#设置文件权限
查看>>
哪些数据科学技能是雇主所需要的
查看>>
mailx邮件客户端发送邮件
查看>>
做为程序员应该要拥有属于自己的独立博客
查看>>
facl 文件系统访问列表 (笔记)
查看>>
GIT使用技巧总结
查看>>
Symantec Backup Exec 2014 备份Exchange 2013之五备份DAG
查看>>
ME60限速模板顺序
查看>>
《阿里巴巴Android开发手册》v1.0.1更新,优化部分内容和示例代码
查看>>
Spark学习记录(三)核心API模块介绍
查看>>
深度优先搜索(Depth First Search)
查看>>
如何解决常见的Joomla安装问题
查看>>
一分钟学会《模板方法模式》
查看>>
openstack 和hadoop的区别
查看>>
python 笔记 之 列表生成式和生成器
查看>>
OSS支持IPV6/IPV4双栈访问域名
查看>>
哪有什么互联网寒冬?只是你穿的少而已!
查看>>
牛客网刷题
查看>>
罗辑思维在全链路压测方面的实践和工作笔记
查看>>