美文网首页
Git重置(reset)

Git重置(reset)

作者: ShukeZheng | 来源:发表于2018-09-02 17:44 被阅读0次

reset是Git中常用命令之一,主要是用来撤销暂存区或者回退版本。reset不会改变HEAD的指向,之前指向master,操作完依然指向master。reset改变的是HEAD所指向的游标。这个要和checkout区分开来,checkout主要用来改变HEAD本身,例如切换分支等。

git reset [-q] [<tree-ish>] [--] <paths>...

参数

<tree-ish>如果不提供的话默认是HEAD所指向的提交(就是当前分支的最后一个commit),也可以通过id指定某个提交。
<paths>指的是文件路径。
-- 用来分隔commit名和文件路径的,防止提交名和路径名冲突。

用法

这条命令执行的效果是用<tree_ish>来覆盖暂存区,相当于git add的反操作。

git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]

参数

--soft只改变版本库,工作区和暂存区不动
--mixed改变版本库和暂存区
--hard改变版本库,暂存区,工作区
--merge 略,暂时没接触到
--keep略,暂时没接触到

这个命令的执行效果是把分支回退到指定的commit上。至于暂存区和工作区是否变化,取决于给的参数。

第一种和第二种方法最大区别在于是否提供<paths><paths>指的是文件路径。
从功能上看,第一种只改变暂存区,第二种是一定会改变分支指针的指向(俗称回退)。

相关文章

  • git reset --soft,--hard的区别

    git reset --soft,--hard的区别 git reset 命令可以将当前的HEAD重置到特定的状态...

  • git reset 回退以前某个版本

    git reset是指将当前head的内容重置,不会留log信息。git reset HEAD filename ...

  • Git重置

    git reset命令改变分支引用文件的内容,即实现分支的重置git reset --hard HEAD^将mas...

  • Git重置(reset)

    reset是Git中常用命令之一,主要是用来撤销暂存区或者回退版本。reset不会改变HEAD的指向,之前指向ma...

  • Git 重置(reset)

    使用 ct 表示commit时产生的对象,fp表示文件路径 两种用法 git reset ct fp此用法包含文件...

  • git reset 指令

    reset:重置;清零。 git reset 使用场景为丢弃commit后的commit信息、index信息或者源...

  • 如何撤销 Git reset重置(How can I undo

    如何撤销 Git重置 How can I undo git reset --hard HEAD~1?要了解可不可撤...

  • git reset 了解

    git reset 表示重置,hard 和soft 表示重置的范围不一样,hard的范围比较大一点,git res...

  • git reset && git revert

    git reset,回退到指定的commit版本,指定commit版本之后的commit都将被重置git reve...

  • Git Reset命令

    Git Reset:将处于Commit区的提交重置。 Git分为三个区:工作区(Working Directory...

网友评论

      本文标题:Git重置(reset)

      本文链接:https://www.haomeiwen.com/subject/vgmmwftx.html