目录
将某次提交作为新的提交
访问量:3068
一、简介
在说git reset命令的时候,我们说过,它是直接修改当前分支对应的commitId,如果当前分支是dev分支,即其修改的是.git/refs/heads/dev里面的内容。如下:
即将指向1,改到,指向2。然后根据参数,判断是否需要把改动,映射到暂存区以及工作区。
说白了,git reset命令是丢弃git某次提交前面的所有提交。
如果不知道dev分支改动前指向的commitId,其恢复改动是比较麻烦的。所以,git reset往往用在私有分支上版本回退,比如舍弃一些没有必要合并到主分支的提交。在公共分支上面进行代码回滚,人们往往倾向选择使用git revert命令,因为git revert是通过一个新的提交,来覆盖上一个版本的改动,如下:
git revert常用方法如下:
git revert commitId
二、常用参数
参数 | 说明 |
-e, --edit | 运行你编辑git revert中提交的备注信息,该参数是默认参数。 |
--no-edit | 该参数和-e, --edit正好相反。 |
-n, --no-commit | 控制git revert回退以后,不提交一个commit。 |
三、git revert和git reset区别
1、git revert的撤销某次操作,是提交一个新的commit,便于查取消撤销。
2、git reset可以针对某个文件或是路径进行撤销。
本文为原创文章,请尊重辛勤劳动,如需转载,请保留本文地址
若您感觉本站文章不错,读后有收获,不妨赞助一下?
我要赞助