git 一些undo操作

使用git的时候经常会出现,“啊!,刚才提交的代码有问题,需要undo一下了” 这种情况,为了应对这种问题。本文介绍 git 的一些 undo 操作

在使用 git 时,可以分为4个工作区域:

  • working area: 本机工作区
  • staging area:当执行 git add时候,文件就会到 staging area
  • local repo: 当执行 git commit 时候,文件就会 从 staging arealocal repo
  • remote repo: 当执行 git push 的时候,local repo 文件就会同步到 remote repo

UNDO:

  • working area:当在 working area写了个bug,undo的话就 backspace 就好了
  • staging area: 在 git add 的时候,突然发现多 add 了个文件,这时候 git checkout <file> 就可以了(此操作不会修改working area中的内容)
  • local repo: 如果想撤回上一次或者几次 commit 怎么办。
    • git reset HEAD~1 (默认为 --mixed) 。撤销git commit, git add 操作, 保留 working area的修改。
    • git reset --soft HEAD~1。撤销 git commit 操作,保留 working area的修改,git add 操作。
    • git reset --hard HEAD~1。撤销 git commit, git add ,working area的修改。
    • git reset HEAD~2。撤销两次提交
  • remote repo:当执行 git push 之后发现坏事了,怎么办
    • git revert commit-id。会删除本次同步的所有内容,并重新add ,commit, push

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一起来复习 Git 的那些操作(一)

    曾经,Svn 俗称小王八,伴随着走过了一年又一年。某年 Git 的横空出世,以迅雷不及掩耳之势强势登顶。

    HLQ_Struggle
  • Git学习笔记(6) -- 独立开发者所用的命令(b)

    git commit 将当前在index中变化的内容提交到仓库(repository)中 语法:

    EltonZheng
  • Git 学习记录

    版本控制系统有两类:集中式与分布式。 分布式版本系统的代表是 Git,而集中式版本系统的代表是 SVN(Subversion)。

    caoqi95
  • Git操作

    版本控制 说到版本控制,脑海里总会浮现大学毕业是写毕业论文的场景,你电脑上的毕业论文一定出现过这番景象! 1 2 3 4 5 6 7 8 ...

    用户1214487
  • git操作

    - `ssh-keygen -t rsa -C "youremail@example.com"`: 用来生成秘钥

    用户2337871
  • git 操作

    用户2337871
  • 基于 Spinnaker 的 K8S 灰度发布,看看这篇

    k8s中的容器一般是通过deployment管理的,那么一次滚动升级理论上会更新所有pod,这由deployment资源特性保证的,但在实际的工作场景下,需要灰...

    DevOps时代
  • 图的一些操作

    李志伟
  • NSDate 的一些操作

    代码伴一生
  • 设计模式 | 备忘录模式及典型应用

    备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态...

    小旋锋
  • 可能每天都会用到的Git命令速查表

    老实说,莱纳斯·托瓦尔兹(Linus Torvalds)的小项目几乎感觉像是一个奇迹。

    王小婷
  • Visual Studio Code 使用Git进行版本控制

    Visual Studio Code 使用Git进行版本控制 本来认为此类教程,肯定是满网飞了。今天首次使用VS Code的Git功能,翻遍了 所有中文教程,竟...

    用户1631416
  • Git 整理 v1.0 | Git 操作整理-远端操作

    大家好,我是多选参数的程序锅,一个正在 neng 操作系统、学数据结构和算法以及 Java 的硬核菜鸡。Git 是 4 月份时候开的一个坑,一直没填完,所以今天...

    syy
  • Git 速查表(速查大全)

    一个淡定的打工菜鸟
  • Git 速查表(速查大全)

    一个淡定的打工菜鸟
  • Git(一)之基本操作详解

    前言   在这段时间的工作中一直都是用Git作为版本控制,只是知道简单的几个命令,没有去了解它的内部原理。所以周末有时间来系统学习。   现在的公司基本上都是用...

    用户1195962
  • selenium的一些js操作

    3.这里可以修改scrollTop 的值,来定位右侧滚动条的位置,0是最上面,10000是最底部。

    周小董
  • gitlab 的一些小操作

    参考博文持续集成之Gitlab安装与应用安装gitlab,进行到三、远端库的基本操作之上即可

    小手冰凉
  • python-一些操作常识

    将地址复制到文本文档,点击保存,如果出现非法格式提示框,不用管,直接保存 打开刚才保存的文档 如果看到地址前面有一个?号,删掉,就是他捣的鬼 复制地址即是...

    全栈程序员站长

扫码关注云+社区

领取腾讯云代金券