🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
git reset –option <commitid>回退命令,option有三个参数可选: ## git reset –mixed [commitid] 这也是默认方式(即不带参数默认是这种),回退暂存区和版本库信息,工作区的源码不会变化,可以重新add,重新commit。 ## git reset –soft [commitid] 回退版本库信息,暂存区和工作区都不会变化,如果还要提交,直接commit即可 ## git reset –hard [commitid] 彻底回退,3个区都回退到历史某个版本 ## 3个区都回退到历史某个版本回退彻底程度: > **hard**(work,stage,repo) > **mixed**(repo,stage) > **soft**(repo) > ## 场景: > `git reset –hard` 抛弃目标节点后的所有commit(可能觉得目标节点到原节点之间的commit提交都是错了,之前所有的commit有问题)。 > `git reset –soft`或 `git reset --mixed` 假如我们想合并「当前节点」与「reset目标节点」之间不具太大意义的 commit 记录(可能是阶段性地频繁提交,就是开发一个功能的时候,改或者增加一个文件的时候就commit,这样做导致一个完整的功能可能会好多个commit点,这时假如你需要把这些commit整合成一个commit的时候)