git reset 三个参数

Snipaste_20220526_172911.jpg

本文建议使用 Sourcetree 工具,工欲善其事,必先利其器。

git reset --soft [HEAD]

Snipaste_20220526_153943.jpg
Snipaste_20220526_154018.jpg

这里创建了5个文件,分次提交。然后我们试试将他软重置到first commit版本。

Snipaste_20220526_160455.jpg

此时5个文件都会回到你的暂存

Snipaste_20220526_161043.jpg
Snipaste_20220526_161052.jpg

那么这个相当于可以用撤回你的提交。有bug要修改就可以撤回。

接下来重新试试把文件修改一下,然后在重置版本会如何处理,这里把5.txt文件修改下,不提交,然后重置到3,

Snipaste_20220526_163057.jpg
Snipaste_20220526_163313.jpg

很显然,因为回退到的是已暂存,所以无冲突。

那么再试试把5.txt文件改动暂存后看是否有冲突。

Snipaste_20220526_163853.jpg

同样重置到3。

Snipaste_20220526_164124.jpg

此时5是你提交的最新状态那个文件

总结就是重置后后提交的内容回到暂存文件里,有改动的文件是最新的文件。

git reset --mixed

Snipaste_20220526_161919.jpg
Snipaste_20220526_162048.jpg

总结前几次提交文件就会将回退的代码放在未暂存(工作区)里,有改动的文件依旧为工作区最新的更改。

git reset --hard

Snipaste_20220526_170042.jpg

这里我工作区有文件,暂存区有改动。执行后就会被全清空

总结这个模式比较暴力,就是把工作区和暂存区全清空回到指定的提交版本,慎用。

(完)
VSCode代码自动补全(html标签、style样式、css属性及值)
使用VSCode碰到.vue文件无法自动提示或补全style
双指针:合并两个有序数组 (88)
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。
年纪大了,该转行程序员吗?
Do your own research , Make educated choice
小程序获取街道等其他地址信息
运用腾讯位置服务sdk处理更多地图信息
再谈浅拷贝和深拷贝
基础要扎实
初读《穷查理宝典》
巴菲特合伙人查理芒格传记
等待你的评论