git reset,git checkout区别
https://www.cnblogs.com/houpeiyong/p/5890748.html
git reset HEAD~1 将HEAD指向倒数第二次提交,最后一次提交删除,文件还在
git checkout 将HEAD指向某个分支,当前的文件保存为快照,
https://segmentfault.com/a/1190000006185954
前面讲到checkout是会修改HEAD的指向,变更Index区域里的内容,修改Working Directory里的内容。
这看上去很像reset --hard,但和reset --hard相比有两个重要的差别
reset会把working directory里的所有内容都更新掉
checkout不会去修改你在Working Directory里修改过的文件
reset把branch移动到HEAD指向的地方
checkout则把HEAD移动到另一个分支
第二个区别可能有点难以理解,举例来说:假设你有两个分支master和develop,这两个分支指向不一样的commit,我们现在在develop分支上(HEAD指向的地方)
如果我们git reset master,那么develop就会指向master所指向的那个commit。
如果我们git checkout master,那么develop不会动,只有HEAD会移动。HEAD会指向master。看图:
带文件参数
当执行git checkout [branch] file时,checkout干了这件事情:
更新了index区域里file文件的内容
更新了working directory里file文件的内容
git reset,git checkout区别的更多相关文章
- git reset --soft --hard 区别
[转]git reset 之 soft mixed hard选项的区别 (2014-09-09 16:54:06) 转载▼ 标签: git 分类: Linux 译注:为了避免丢失本地的修改以及orig ...
- Git - reset和checkout的区别
参考 https://segmentfault.com/a/1190000006185954 1. Git的所有操作实际上是在操作这三个区域的状态(或内容) 2. 区别 checkout是会修改HEA ...
- Git reset与checkout的区别
reset: 将暂存区的文件回撤到工作区,文件内容不会有任何变化 checkout: 将工作区文件恢复到上一次commit时的内容,将会丢失修改了但未加入暂存区的内容
- git fetch pull checkout区别
Git中从远程的分支获取最新的版本到本地有这样2个命令: 1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge <p style="margin-top: 0 ...
- git reset soft,hard,mixed之区别深解
GIT reset命令,似乎让人很迷惑,以至于误解,误用.但是事实上不应该如此难以理解,只要你理解到这个命令究竟在干什么. 首先我们来看几个术语 HEAD 这是当前分支版本顶端的别名,也就是在当前分支 ...
- git reset 与 git revert的区别?
一,git reset的功能: 该命令修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本, 说明: 修改后,push到远程仓库时需要使用"git push -f"提 ...
- [转] git reset简介
http://blog.csdn.net/hudashi/article/details/7664464 http://guibin.iteye.com/blog/1014369 http://hi. ...
- Git reset head revert 回滚
Overview 涉及Git一些日常操作 :) 基础知识 <Pro Git>至少了解branch,commit的概念,及基本的原理 Git常用魔法 存档:master代码回滚方法 我是QA ...
- git reset总结
git reset git 的重置操作 有三种模式:hard.mixed(默认).soft 1. hard 用法 hard会重置stage区和工作区,和移动代码库上HEAD 和branch的指针所指向 ...
随机推荐
- 动态MST
原谅我真的写不下去了,太难写了,先占坑. 啥时候有比较连续的时间了再写 肯定没用了的无聊代码 #include <cstdio> #include <vector> const ...
- java实现短连接
现在比较流行短连接,例如新浪微博,腾讯等等公司都开始使用短连接. ① 将长网址用md5算法生成32位签名串,分为4段,,每段8个字符: ② 对这4段循环处理,取每段的8个字符, 将他看成16进制字符串 ...
- 托福、雅思和GRE的区别
托福雅思GRE区别在哪里?对于准备申请美国硕士生的同学们来说,必须了解这一点,才能根据自身实际情况进行有针对性的复习,下面我们来进行详细介绍,为同学们指点迷津. - GRE是由美国教育考试服务处(Ed ...
- Windows2008下RDP采用私有CA服务器证书搭建文档
在中小型公司建立企业根证书颁发机构 (CA) http://www.microsoft.com/china/smb/issues/sgc/articles/build_ent_root_ca.mspx ...
- 转:Android ListView 异步加载图片
http://www.iteye.com/topic/1118828 http://www.iteye.com/topic/1127914 这样做无疑是非常可取的方法,但是加载图片时仍然会感觉到轻微的 ...
- 【ZOJ4063】Tournament(构造)
题意:n个人要打m轮比赛 每一轮每个人都要有一个对手.而且每个对手只能打一次.假设a与b打了,c与d打了, 那么后面的任意一轮如果a与c打了,那么b就必须和d打 问是否存在方案,输出字典序最小的一组, ...
- log4net配置,正在用
<?xml version="1.0" encoding="utf-8" ?> <log4net> <appender name= ...
- 生活大爆炸版锤子剪刀布(NOIP2014)(真·模拟)
水!水!!水!!!(重要的事情说三遍..) 1分钟代码题.. 原题传送门 这题啊,手打BOOL判断,然后乱搞啊.. 这有什么难的.. 加个快读就能拿第一啦.. 膜9018上各位大佬们.. 下面贴代码 ...
- eclipse keys
Navigate Open Declaration F3 Editing Script Source Source Mark Occurrences Alt+Shift+O Editing PHP s ...
- windows技术
鼠标右键菜单中没有新建文本文件怎么办? http://jingyan.baidu.com/article/046a7b3e1d737bf9c27fa9f7.html