git reset(--hard/--soft/)和git revert的区别

在平时的使用GIT进行版本控制作业时,常常会遇到需要退回或者撤销代码的情况,这时候我们就需要清楚怎么去使用git reset和git revert命令。

在了解Git reset命令之前我们先了解下git库的三种状态:

  1. 已提交(committed)已保存在本地数据库。
  2. 已修改(modified)修改了某个文件的内容或者标题,但还没有提交保存。
  3. 已暂存(staged)把已修改的文件放在下次提交时要保存的清单中。
  • git reset --hard 与git reset --soft的作用和区别
    git reset --hard
    本地修改文件在退回到上一次修改状态之后,在此操作之前的所有文件记录都被彻底删除,且工作去和暂存区都会修改。

    git reset(--hard/--soft/)和git revert的区别_第1张图片
    image

    git reset --soft
    是从暂存区中撤回
    git reset(--hard/--soft/)和git revert的区别_第2张图片
    image

  • git revert
    把在编辑器内修改的内容进行撤回。撤回一个提交的同时会创建一个新的提交。

    git reset(--hard/--soft/)和git revert的区别_第3张图片
    image

你可能感兴趣的:(git reset(--hard/--soft/)和git revert的区别)