`

[原创] git revert和reset的区别

    博客分类:
  • git
阅读更多

之前对git revert和reset的区别不太清楚,找到了这篇文章,同时通过实验,算是初步搞懂了他们的区别。

这里 写道
http://blog.csdn.net/xiao628945/article/details/8182276

 在这里用自己的话说明一下他们的区别。

git revert 意思是仅仅撤销本次提交,如果是新建文件,那么该文件被删除,且不存在暂存区,之前或之后的commit不受影响。

git reset --soft/hard commitID 撤销的是该次commit之后的所有提交,--hard表示工作区的代码完全替换成commitID这次的代码,且被撤销的代码不存在与暂存区;--soft表示commitID之后的代码会移入暂存区。

 

[2013/06/26]

更新昨天的理解,如果commit已经push到远端,那么在这种情况下,执行git revert commit ID之后push到远端就会撤销commit ID对应的远端提交;而执行git reset commit ID只会降低本地代码的版本,push到远端会提示“代码版本低于远端版本,需要执行git pull...”之类的。所以如果想要撤销远端某此提交,需要执行git revert commit ID 而不是git reset。

[2013/09/20]

git revert如果是自己用的话,完全没有必要使用,这个命令只是git rm **+git cmt -m "balabalabla"的“简写”而已。

0
1
分享到:
评论

相关推荐

    前端大厂最新面试题-git reset_ git revert.docx

    本文将详细介绍 Git Reset 和 Git Revert 的理解、区别和使用场景。 一、Git Reset Git Reset 用于回退版本,可以遗弃不再使用的提交。执行时,需要根据影响的范围而指定不同的参数,可以指定是否复原索引或工作树...

    git revert和git reset的区别详解

    通过上述介绍,我们可以清晰地看出`git revert`和`git reset`的区别在于: - `git revert`是通过创建一个新的提交来撤销更改,而`git reset`则是通过移动HEAD指针来撤销更改。 - `git revert`不会影响原有的提交...

    git-reset-revert-tutorial

    在Git版本控制系统中,`git reset` 和 `git revert` 是两个非常重要的命令,它们用于撤销或回滚代码更改。这两个命令在处理错误的合并、回退到特定版本或者修复历史记录时尤其有用。让我们详细了解一下这两个命令...

    Git恢复之前版本的两种方法reset、revert(图文详解)

    在开发过程中,由于误操作或者需要撤销某些提交,Git 提供了两种恢复之前版本的方法:`git reset` 和 `git revert`。这两种方法各有其适用场景,理解它们的区别和使用方法对于有效地管理代码历史至关重要。 1. **...

    git 视频教程

    git视频教程.3.5.Git 命令 - git reset.mp4 git视频教程.4.1.Git 命令 - git branch.mp4 git视频教程.4.2.Git 命令 - git branch.mp4 git视频教程.4.3.Git 命令 - git branch.mp4 git视频教程.4.4.Git 命令 - git ...

    Git-1.9.0 git

    例如,了解如何创建和切换分支(`git checkout -b`),如何解决合并冲突(`git diff`、`git merge --abort`或`git mergetool`),以及如何回退到之前的版本(`git reset`或`git revert`)。此外,学习使用GitHub或...

    完全学会GIT+GITHUB+GIT+SERVER的24堂课

    Git的`git revert`和`git reset`命令可撤销更改,但前者创建新的提交,后者直接修改历史。遇到冲突时,开发者需要手动编辑冲突文件,然后使用`git add`和`git commit`完成解决。 **8. Git钩子** Git钩子是一系列...

    git 教材 progit

    6. **撤销操作**:Git提供了一些强大的撤销操作,如`git reset`和`git revert`,可以在不影响历史记录的情况下回退到之前的版本。 7. **标签管理**:`git tag`命令用于标记特定的提交,通常用于发布版本或者重要...

    git安装包git-2.34.0-64-bit.rar

    9. **版本回溯**:Git的版本历史查询功能强大,`git log`显示提交历史,`git revert`或`git reset`可以回滚到特定版本。 10. **标签管理**:`git tag`命令用于创建和管理标签,常用于标记重要的里程碑或版本。 ...

    git 2.20 x64

    4. **撤销操作**:通过`git reset`和`git revert`,可以撤销错误的提交,保护代码的完整性。 5. **合并冲突解决**:当多个开发者修改同一部分代码时,Git会提示合并冲突,用户可以手动解决这些冲突后再提交。 Git ...

    git修改和删除

    - 如果文件已经被提交到了仓库,可以考虑使用`git revert`或`git filter-branch`等高级命令来撤回已提交的修改。 - 在紧急情况下,还可以考虑使用`git commit --amend`命令来修改最后一次提交的信息。 综上所述,...

    Git工具安装包,Git工具安装包

    6. 撤销操作:如果误操作,Git提供了强大的撤销功能,如`git reset`和`git revert`,可以在不影响历史记录的情况下恢复到之前的状态。 7. 快照式模型:Git以文件快照的形式存储项目状态,每次提交都是对整个项目...

    Git版本控制管理 第2版.pdf.zip

    6. **回溯与撤销**:`git reset`、`git revert`和`git checkout`命令的用法,如何恢复错误的提交或者回到历史状态。 7. **标签管理**:使用`git tag`为特定版本打标签,方便回溯和发布。 8. **Git的高级功能**:子...

    Git安装文件.zip

    对于版本回溯,`git log` 显示提交历史,`git reset` 和 `git revert` 分别用于撤销提交和创建新提交以恢复之前的状态。而`git reflog` 可以帮助找回丢失的分支或提交。 总之,Git 2.32.0.2的64位版本提供了稳定且...

    Pro Git 第二版 v2.1.17 中文版 非扫描 EPUB 和 PDF

    5. 撤销与重做:Git提供了一系列工具,如`git reset`、`git revert`和`git checkout`,用于撤销错误操作或恢复到之前的版本状态。这些内容在书中都有详细的介绍和实例。 6. 版本回溯与解决冲突:通过`git log`、`...

    猴子都能懂的Git入门-整站

    3. 撤销操作:讲解`git revert`、`git reset`和`git checkout`在撤销更改时的区别和应用场景。 4. .gitignore文件:如何设置和使用,避免不必要的文件被追踪。 5. Git钩子:了解`pre-commit`、`post-receive`等钩子...

    pro_git_中文版本(Git使用教程)

    6. **撤销操作**:Git允许你在历史记录中移动,撤销错误的操作,如`git reset`和`git revert`。 7. **合并与衍合**:`git rebase`是另一种合并策略,它将你的分支修改应用到最新的上游分支上,保持提交历史的线性。...

    git for windows32 or windows64

    除了基本的命令,Git还提供了丰富的高级功能,如分支管理(`git branch`和`git merge`)、撤销更改(`git reset`和`git revert`)、标签(`git tag`)等。学习和熟练掌握这些功能,将有助于提高团队协作效率,确保...

    Git-2.45.2-64-bit.rar

    - 重置与回退:`git reset`和`git revert`用于撤销错误的提交或恢复到特定状态。 在安装"Git-2.45.2-64-bit.exe"后,用户将获得Git的图形化界面和命令行工具,包括Git Bash,它提供了一个类Unix环境来执行Git命令。...

Global site tag (gtag.js) - Google Analytics