git reset --soft驻颜术(恢复文件之前的状态)

前言

这是小明结婚生子后,老婆小红要整容的故事。

了解整容方案

  1. 回到过去,找到以前的样子:git reset --soft
  2. 整容成之前的样子:git checkout
  3. 回到未来:git reset --soft
    在这里插入图片描述
    ps:这里 我理解成一次commit点,记录了当前索引的指向。
    修改后,工作目录变化。git add后将修改索引指向(新文件/内容)。再次git commit后,将当前commit点与索引关联。

整容过程

  1. 确定要回到的年代:
    回顾5e48【小华刚出生那年】,小红感叹自己【脸上还没有岁月的痕迹】。
    在这里插入图片描述
    在这里插入图片描述

  2. 确认2030年目前状况:
    要回到过去,找回小红以前的样子。
    首先要保证这次穿越平平安安的。
    在这里插入图片描述

  3. 回到过去:git reset --soft 小华出生那一年的commitId

  4. 消去小红脸上的岁月痕迹:git checkout xiaohong
    在这里插入图片描述

  5. 消掉痕迹后,再回到未来:git reset --soft 2030年的commitId
    在这里插入图片描述

结论

除了小红脸上的痕迹消去了,什么都没变(小明、儿子都在)。
一次完美的整容!
强烈推荐大家利用git reset --soft为老婆/女朋友青春永驻。

附: 利用 git reset --mixed实现

–mixed是 git reset的缺省值。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考

参考《Git版本控制管理》
在这里插入图片描述

posted @ 2020-04-28 01:30  thewindkee  阅读(1698)  评论(0编辑  收藏  举报