git reset --soft驻颜术(恢复文件之前的状态)
前言
这是小明结婚生子后,老婆小红要整容的故事。
了解整容方案
- 回到过去,找到以前的样子:
git reset --soft - 整容成之前的样子:
git checkout - 回到未来:
git reset --soft
![在这里插入图片描述]()
ps:这里 我理解成一次commit点,记录了当前索引的指向。
修改后,工作目录变化。git add后将修改索引指向(新文件/内容)。再次git commit后,将当前commit点与索引关联。
整容过程
-
确定要回到的年代:
回顾5e48【小华刚出生那年】,小红感叹自己【脸上还没有岁月的痕迹】。
![在这里插入图片描述]()
![在这里插入图片描述]()
-
确认2030年目前状况:
要回到过去,找回小红以前的样子。
首先要保证这次穿越平平安安的。
![在这里插入图片描述]()
-
回到过去:
git reset --soft 小华出生那一年的commitId -
消去小红脸上的岁月痕迹:
git checkout xiaohong
![在这里插入图片描述]()
-
消掉痕迹后,再回到未来:
git reset --soft 2030年的commitId
![在这里插入图片描述]()
结论
除了小红脸上的痕迹消去了,什么都没变(小明、儿子都在)。
一次完美的整容!
强烈推荐大家利用git reset --soft为老婆/女朋友青春永驻。
附: 利用 git reset --mixed实现
–mixed是 git reset的缺省值。



参考
参考《Git版本控制管理》








浙公网安备 33010602011771号