• git reset soft mixed hard keep区别


    git reset 是 用于撤销之前的提交或修改仓库的状态。在使用 git reset 命令时,可以指定不同的模式来达到不同的效果。这些模式包括 --soft、–mixed、–hard 和 --keep。

    1 git reset --soft  xx :

    该模式会将 HEAD 指向目标提交,但会保留目标提交之后的修改。此时,目标提交之后的修改会变成未暂存的修改,可以使用 git status 命令查看并选择性地提交修改。

    大致就是 你操作了,

    1.1 修改代码 

    1.2 git add ,

    1.3 git commit ,

    1.4 git push 

    然后执行 git reset --soft  xx  相当于你回退到了 1.2 git add 这一步。 其他的没有改变, 

    2 git reset --mixed(默认模式)xx:

    该模式在执行 git reset 命令时不带任何参数时,默认使用的就是该模式。它会将 HEAD 指向目标提交,并清除目标提交之后的修改。此时,目标提交之后的修改会变成未提交的修改,可以使用 git status 命令查看并选择性地提交修改。

    大致就是你操作了

    1.1 修改代码 

    1.2 git add ,

    1.3 git commit ,

    1.4 git push 

    然后执行 git reset --mixed xx  相当于你回退到了 1.1 修改代码 这一步。 其他的没有改变,

    就是你修改的代码还在,下面的几个步骤回退了

    3 git reset --hard xx:

    该模式会将 HEAD 指向目标提交,并彻底清除目标提交之后的修改,即撤销所有未提交的修改。此时,目标提交之后的修改会被永久丢弃,请谨慎使用。 

    大致就是你操作了

    1.1 修改代码 

    1.2 git add ,

    1.3 git commit ,

    1.4 git push 

    然后执行 git reset --hard xx  相当于你回退到了修改代码之前,就是修改的代码都没了,简单粗暴,使用的时候注意是否要备份下自己修改的内容

    4 git reset --keep xx:

    该模式类似于 git reset --mixed,它会将 HEAD 指向目标提交,并尝试保留目标提交之后的修改。但与 git reset --mixed 不同的是,如果目标提交之后的修改与当前状态存在冲突,该模式会终止操作,以避免可能造成的代码丢失

    这个自己用的可少。没啥好说的就是类似mixed ,有冲突的时候该操作会终端。

  • 相关阅读:
    CSO面对面|对话因陀罗,共话游戏行业安全防护之路
    llama2+localGPT打造纯私有知识助手
    电脑蓝屏怎么办 七大原因及解决办法来帮你
    React Native 之 expo-cli使用 (二十四)
    【源码编译】android-8.0.0_r21 for Pixel 2 XL for Youpk on ubuntu20.04-server
    Java【方法】,方法重载,方法递归,你都会了吗?
    【Docker】Dockerfile:常见保留字、使用案例
    Linux定时器
    WM_COPYDATA传回返回值的一个方案
    测试架构师如何落地性能测试方案(二)
  • 原文地址:https://blog.csdn.net/qq_33210042/article/details/132708926