2.更改最近一次(本次) commit 的提交信息:

当我们执行
git add .
git commit -m "0-0-1"
之后我们发现自己写的提交信息是不符合项目要求的,这个时候我们需要重新写,这个时候怎么办呢?
我们执行
git commit --amend -m '你新的提交信息'

3. 取消本次 commit,不撤销 git add .

当我们执行
git add .
git commit -m "第3次,在B站学的新的知识"
有些时候我想取消本次 commit ,不撤销 git add . 不删除工作区更改的代码
我们可以执行
git reset --soft HEAD^
ps:HEAD^ 表示上一个版本号;就是本次commit产生的版本号

4. 取消本次 commit 和 git add

当我们执行 git add .
git commit -m "xxxxx"
此时我们想撤销本次 commit 和 git add
git reset --mixed HEAD^
不删除工作区改动的代码,撒销commit,撤销git add
ps:HEAD^ 表示上一个版本号;就是本次commit产生的版本号

5. 删除工作区的代码,撤销commit,撒销git add (谨慎使用)

当我们执行 git add .
git commit -m "xxxxx"
此时我们想删除本次工作区的代码
git reset --hard HEAD^ (执行后,本次你新增的代码将会被删除,所以这个命令要谨慎操作哈)
ps:HEAD^ 表示上一个版本号;就是本次commit产生的版本号

6. git回退到某个commit

git reset --hard commit_id   退到/进到 指定的某一个commit的版本commit
什么时候回使用这个命令呢?
比如说:你某一天新增了代码,执行了
git add .
git commit -m "xxxxx"
拉取了远端的代码(这个时候你本来应该拉取远端develop代码的,结果拉取了远端release代码)
造成了本该不属于这个分支的代码出现在了这个分支上。怎么处理呢?(很明显这一步我们操作错了)
因此我们需要回退。这个时候我们就需要执行 git reset --hard commit_id
先执行 git log 找出这个 commit 的id号
然后执行 git reset --hard 3b13e6a8de75dfda6fd7a15d71e826285c79608e
这样就可以回退到我们需要的commit了。

git有关commit的命令的更多相关文章

  1. 『现学现忘』Git后悔药 — 34、git commit --amend 命令

    目录 1.git commit --amend 命令说明 2.使用场景 (1)场景一 (2)场景二 3.git commit --amend 命令原理 这是我们Git中的第三种后悔药. 1.git c ...

  2. git plumbing 更加底层命令解析-深入理解GIT

    原文: http://rypress.com/tutorials/git/plumbing 本文详细介绍GIT Plumbing--更加底层的git命令,你将会对git在内部是如何管理和呈现一个项目r ...

  3. Git中的merge命令实现中出现问题及其解决

    Git中的merge命令实现和工作方式 2015年8月17日星期一 丹丹 git代码在合并两个分支的时候总是会出现一下的错误提示,不能正常的完成合并分支,错误提示如图所示: 但是在其他的终端是可以完成 ...

  4. [Git]09 如何为命令起外号

    Git并不会推断你输入的几个字符将会是哪条命令,不过如果想偷懒,少敲几个命令的字符,可以用 git config 为命令设置别名.来看看下面的例子: $ git config --global ali ...

  5. git 学习笔记(常用命令)

    1.新建一个文件,如果没有使用git add 命令将它提交到暂存区,那么这个文件就还没有被跟踪. 2.通过配置.gitignore文件可以指定要忽略的文件,被忽略的文件夹是不会被提交到暂存区的.所以这 ...

  6. github总结(4)--关于git reset --hard这个命令的惨痛教训

    背景叙述: 前几天,上传自己的个站到git上的时候,手欠脑发晕的用了次git reset --hard xxxxxx 命令.由于只在线上传入了一个index.html页面(自己都不知道自己咋想的,就这 ...

  7. git撤销commit 并保存之前的修改

    撤销并保留修改 参数 –soft  # 先进行commit ,之后后悔啦  $ git commit -am "对首篇报告研究员字段改为author_name" 执行git log ...

  8. GIT学习笔记——常用命令

    最近使用使用GIT较多,但命令很容易就忘记了,于是整理下,大多整理与一些文档和他人博客 在当前目录新建建一个纯git代码库 $ git --bare init 在当前目录新建一个Git代码库 $ gi ...

  9. Git安装以及常用命令(图文详解)

    **Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...

  10. Git 和 Repo常用命令

    这篇博客总结的也不错: git常用及进阶命令总结 Git与Repo入门 一.初始環境配置 git config --global user.name "John Doe"git c ...

随机推荐

  1. 关于Spring注解开发教程,打包全送你

    摘要:spring是我们web开发中必不可少的一个框架,基于传统的xml方式配置bean总觉得太过繁琐,从spring2.5之后注解的出现可以大大简化我们的配置. 本文分享自华为云社区<如何高效 ...

  2. GaussDB (for Cassandra) 数据库治理:大key与热key问题的检测与解决

    摘要:GaussDB(for Cassandra) 提供了大key和热key的实时检测,以帮助业务进行合理的schema设计,规避业务稳定性风险. 本文分享自华为云社区<GaussDB (for ...

  3. Redisson:这么强大的实现分布式锁框架,你还没有?

    摘要:Redisson框架十分强大,基于Redisson框架可以实现几乎你能想到的所有类型的分布式锁. 本文分享自华为云社区<[高并发]你知道吗?大家都在使用Redisson实现分布式锁了!!& ...

  4. Go--Println、Printf区别

    Println:打印字符串.变量:    同函数输出多项,之间存在空格    不同函数输出自动换行 Printf:打印需要格式化的字符串,可以输出字符串类型的变量:不可以输出整型变量和整型   同函数 ...

  5. 如何在CSDN上如何快速转载博客

    复制粘贴应该是最显而易见的方法,但是不仅会有丢失内容,而且格式也会丢失.要想达到更好的效果,可以从html源码入手. 1.在chrome浏览器中打开要转载的文章,右键选择检查(or使用F12) 2.在 ...

  6. AtCoder Beginner Contest 187 题解

    A - Large Digits 按要求求出两个数的每位之和,进行比较即可. 时间复杂度 \(\mathcal{O}(\log(AB))\). B - Gentle Pairs 枚举所有点对求斜率. ...

  7. 关于 Windows10升级版本后,内存占用率居高不下的解决办法

    一个月前,打开系统更新,win 10 推送了 最新版本. 然后手贱点了更新. 的确一开始没觉得的有什么明显变化,但最近总觉得机子卡的卡的严重,查看了下内存,占用率居高不下. 经常才打开一两个软件内存就 ...

  8. 0x05 基本算法-排序

    A题:Cinema 经典离散化例题,把电影的语言与字幕和观众懂的语言放进一个数组,然后离散化. 最后统计快乐人数. const int N = 200006; int n, m, a[N], x[N] ...

  9. SAE 联合乘云至达与谱尼测试携手共同抗疫

    作者 | 营火.计缘.张祖旺 前言 当前疫情形势依然严峻,各行各业众志成城,携手抗疫.新冠病毒核酸检测筛查是疫情防控的重要一环,如何应对疫情的不断反复,以及每日数以万计的核酸检测结果成为每个检测公司的 ...

  10. oracle开机自动重启

    数据库服务器如果由于某种原因重启了,oracle数据库是不会重新启动的,那么如何配置可以完成操作系统重启数据库服务器自动重启. 注:如下样例根据我的实际oracle安装路径写的,使用时根据实际安装路径 ...