Git 回退操作

Git中回退的操作使用比较频繁,下面总结一下

撤销上一次git add动作

git reset HEAD <file>
取消最近一次工作区到暂存区的提交,实际是用HEAD分支内容覆盖暂存区,工作区不会变化

撤销工作区的修改

git checkout -- <file>
暂存区回退工作区,实际是用暂存区的内容覆盖工作区,工作区内容会被暂存区覆盖

注意:git checkout 命令同时也是切换分支的命令,容易混淆。这里用"--"符号,是为了避免存在名为file的分支导致歧义。如果不存在此情况,"--"可以省略。

撤销上一次git commit动作

git reset HEAD~
本地库回退上一个版本(HEAD指针移动到上一个版本)

git reset HEAD~<n>
本地库回退到前n个版本(一个波浪线表示回退一个版本。n表示波浪线的个数)

参数:
--mixed: 默认选项,将快照回滚到暂存区
--soft: 只移动HEAD指针(改变本地库)
--hard: 将快照同时回滚到暂存区和工作目录

git reset ID号
回退指定版本(用ID号)
参数同上

回退个别文件

git reset 版本快照 文件名/路径
只改变文件,不影响HEAD指针。不能使用(soft/hard)参数,只改变文件到暂存区

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 3,612评论 0 13
  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 15,963评论 5 147
  • 7月18日,一同事发了一条朋友圈,题目是“罗子君的逆袭告诉我们,一个强大的朋友圈有多重要”,还加了一句自...
    西陵书香徐梅阅读 879评论 1 6
  • 屋后的荷, 白天的漫步, 夜晚的闲踱, 依窗的俯瞰, 赏她看她无数遍。 总想为她写点什么, 但提笔又无言。 今天,...
    岁月如歌_d342阅读 308评论 0 1
  • 因为心血来潮,我坚持每天刺绣打卡,坚持了28天,没有想象的那么难,也没有想象的那么容易,因为眼睛出了点问题,只能在...
    叶样悠阅读 1,988评论 46 61