技术标签: java语法
想要git reset命令回退到项目的某个commit版本,而有hard、soft、mixed三个参数可供选择。下面先给结论:
摘自链接
reset三种模式区别和使用场景:
1、–hard: 会将项目文件目录及commit记录都回退到目标commit。适用于需要修改项目目录的情况,而另外两个配置的项目文件是不会修改的。
2、 –soft: 保留working Tree工作目录和index暂存区的内容,只让repository中的内容和 reset 目标节点保持一致。适用于需要将多个commit合并简化成一个commit的情况。
3、 –mixed(默认) 重置位置的同时,只保留Working Tree工作目录(项目文件)的內容,但会将 Index暂存区 和 Repository 中的內容更改和reset目标节点一致。适用于移除所有Index暂存区中准备要提交的文件(Staged files),我们可以执行 git reset HEAD 来 Unstage 所有已列入 Index暂存区 的待提交的文件。(有时候发现add错文件到暂存区,就可以使用命令)。
原理:

文件存入Repository流程

文件存入Repository流程:
1、刚开始 working tree 、 index 与 repository(HEAD)里面的內容都是一致的

2、当git管理的文件夹里面的内容出现改变后,此時 working tree 的內容就会跟 index 及 repository(HEAD)的不一致,而Git知道是哪些文件(Tracked File)被改动过,直接将文件状态设置为 modified (Unstaged files)。

3、当我們执行 git add 后,会将这些改变的文件內容加入 index 中 (Staged files),所以此时working tree跟index的內容是一致的,但他们与repository(HEAD)內容不一致。

4、接着执行 git commit 後,將Git索引中所有改变的文件內容提交至 Repository 中,建立出新的 commit 节点(HEAD)后, working tree 、 index 與与repository(HEAD)区域的内容 又会保持一致。

来源:https://www.jianshu.com/p/c2ec5f06cf1a
概念 工作区: 如图所示我新建了一个文件 a 此时他就是处于工作区的文件 也可以将工作区理解为 未使用 git add 的文件(图中红色a) 暂存区: 使用了 add 命令将工作区中的文件a提交到了暂存区 也可以将暂存区理解为已使用 git add,但未使用 git commit 的文件(图中绿色a) git reset xxx、git reset --hard xxx、gi...
关于git中soft mixed hard的区别以及keep的理解 当使用回滚版本的时候,在使用hard、soft、mixed是不一样的 1、hard ①移动本地库HEAD指针 ②重置暂存区 ③重置工作区 意思就是,回滚后,本地代码就是你回退版本的代码 2、soft ①移动本地库HEAD指针 意思就是,回滚后,仅仅是把本地库的指针移动了,而暂存区和你本地的代码是没有做任何改变的。而你上次改动已提交...
1、soft ①移动本地库HEAD指针 意思就是,回滚后,仅仅是把本地库的指针移动了,而暂存区和你本地的代码是没有做任何改变的。而你上次改动已提交committed到本地库的代码显示是绿色即未提交 2、mixed ①移动本地库HEAD指针 ②重置暂存区 意思就是,回滚后,不仅移动了本地库的指针,同时暂存区的东西也没了,意思就是你上次添加到暂存区的文件没了 原文链接:ht...
git 版本回退 git reset --hard HEAD 一不小心用git pull拉取远程仓库代码 ,把本地开发的新代码直接覆盖掉,这时想恢复本地代码要如何操作 1.进入到项目git本地仓库文件夹下 2.打开cmd窗口,执行命令:git reflog 其中: HEAD@{0}表示当前版本,即你本地最新版本 3.找到需要回退的版本,执行命令:git reset --hard HEAD@{n} ...
近日抽闲读了老师推荐已久的这部设计史上的著作——唐纳德诺曼的The Design of Everyday Things,中文译名是《设计心理学》,全套共四部,我读了第一部,总的感觉就一个词——恍然大悟!被作者的细心以及擅于思考所折服,他能够抓住生活中很多人习以为常的不方便和小错误,从而解释糟糕的设计可能带给我们的麻烦甚至灾难。...
博客,记录一点一滴,终将汇聚成星辰大海 目录 写博客的好处: 要怎么写博客: 写博客的好处: 【1】我认为写博客能充当自己的资料库,你能随时翻阅你之前学的所有东西,你是否有这样的经历,明明自己之前学过这方面的内容,而且还挺熟悉,但怎么都记不起来具体细节,这时候你的资料库就能最快帮你回忆起你学的东西。 【2】把自己学到的经验,分享出来,自己之前踩到的所有坑都记录下来,当读者读你的博客时,就能少走一些...
beef BeEF-XSS是一款非常强大的web框架攻击平台,集成了许多payload,可以实现许多功能 BeEF-XSS可以说是最强大的XSS漏洞利用工具,可以收集浏览器信息、键盘记录、社会工程等 总之就是使用beef这个工具来利用xss漏洞的 beef安装 我在kail虚拟机上安装的,很简单的在终端输入一句命令sudo apt setup beef-xss,然后安装成功设置密码就行了,因为之后...
首先我下载的版本是 FindBugs-IDEA-1.0.1 ,然后我会在文中提供(FindBugs-IDEA-1.0.1.zip)下载资源,我在安装过程中的问题如下: 1,在编辑器里面始终下载不下来,每次都是一半的时候就失败啦。最后就去网上下载zip文件本地安装。 下面就是下载安装使用一条龙服务详情 先是在这个编辑器里面怎么安装这个插件的示范。也许你网络很顺畅呢,就OK拉。 我是等到花儿都谢啦,也...
块级格式化上下文听说过多次,自己也去看了许多文章,但自己总是觉得晦涩,搞不清楚,后来又再去查了下很多文章,终于觉得自己理解一些了,希望自己描述出来能够准确和易懂。 Formatting context Formatting context 是页面的一个渲染区域,它有着自己的渲染规则,决定渲染区域里面的元素怎么定位,以及里面的元素之间的相互作用。而块级格式化上下文(Block fomatting c...
代码分析也无需事无巨细皆列而剖之,只要找到关键所在也就是了;又不然列一堆的声明上来,纵然有人有耐心看下去,我也没耐心写下去啊。特别关注了三 个类,Stats、MonitorPerformancePanel、MonitorGraph。分别是获取解析得到的数据、监控器面板显示和监视器上的 图像绘制。下面选取了一些关键代码来进行分析: 首先是Stats.java,下面是计算内存使用率的方法 public...
df= I need a new column with the percentile score for each element with respect to the column. The final answer should look like this. I want the output of the stats.percentileofscore() function to be...
I want to create tree with multiple children and create every node with a function. Here is my structure for node: And here is my function to create new node (with four children): When I run this func...
I am using sample code explain here https://github.com/Azure-Samples/app-service-msi-keyvault-dotnet but they only explained how can we get single secrete not list of secrete. so to get all secrete I'...
I am using Eclipse I would like to increase the font size of the IDE, not just the font of the editor. Is there any way I can do that? I haven't been able to find a solution for this yet. you can try ...
It regards Entity Framework 6 but maybe it isn’t related to the version. I have some class which has Guid Id but by inheritance. Right now I would like to change this model to auto generate Id b...