如果不小心commit了一个不需要commit的文件,可以对其进行撤销。

先使用git log 查看 commit日志

  1. commit 422bc088a7d6c5429f1d0760d008d86c505f4abe
  2. Author: zhyq0826 <zhyq0826@gmail.com>
  3. Date:   Tue Sep 4 18:19:23 2012 +0800
  4. 删除最近搜索数目限制
  5. commit 8da0fd772c3acabd6e21e85287bdcfcfe8e74c85
  6. Merge: 461ac36 0283074
  7. Author: zhyq0826 <zhyq0826@gmail.com>
  8. Date:   Tue Sep 4 18:16:09 2012 +0800

找到需要回退的那次commit的 哈希值,

git reset --hard commit_id

使用上面的命令进行回退

以下是豆瓣的

苍炎的日记

起因: 不小新把记录了公司服务器IP,账号,密码的文件提交到了git



方法:





    git reset --hard <commit_id>



    git push origin HEAD --force







其他:



    根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:

    git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息

    git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index

file一级。如果还要提交,直接commit即可

    git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容





    HEAD 最近一个提交

    HEAD^ 上一次

    <commit_id> 每次commit的SHA1值. 可以用git log 看到,也可以在页面上commit标签页里找到

亲测 git

reset –soft命令,只是撤销了commit的提交记录,commit改动的代码仍然存在,很受用。

git

reset --soft commit-id,其中的commit-id指的是撤销之前的那个commit id.









一、命令行方式删除

本地

远程

分支

命令:

git branch -D  <分支名称>

执行效果:只删除Git库工作区的本地分支,不会将Git库工作区中该远程分支的引用文件删除,也不会删除远程库中的同名分支。

命令:

git push origin --delete <分支名称>

注:“分支名称”处直接填写分支名称,不要带上origin的字样

执行效果:将远程库中的分支删除,并会将Git库工作区中该远程分支的引用文件删除,但是不会删除Git库工作区中与这个远程分支建立了“tracking”联系的本地分支。

tag

命令:

git tag -d <tag名称>

执行效果:删除Git库工作区中的tag,不会将远程库中的同名tag删除

命令:

git push origin --delete tag <tag名称>

执行效果:将远程库中的tag删除,但不会删除Git库工作区中的同名tag

转git取消commit的更多相关文章

  1. git 取消commit

    git如何撤销上一次commit操作 1.第一种情况:还没有push,只是在本地commit git reset --soft|--mixed|--hard <commit_id> git ...

  2. git commit后如何取消commit

    在git使用中要如何取消commit但是还未push的操作? 通常,我们对修改的文件会先git add .,然后git commmit -m "注释",但是如果commit错了,想 ...

  3. [git] 细说commit (git add/commit/diff/rm/reset 以及 index 的概念)

    http://kasicass.blog.163.com/blog/static/39561920133294219374/ 创建测试仓库 $ git init $ echo "line o ...

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

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

  5. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  6. git 修改commit 的注释

    git 修改commit 的注释 一:最新的一次提交 当你不小心,写错了提交的注视/信息,该如何处理呢.理论上,SCM是不应该修改历史的信息的,提交的注释也是.    不过在git中,其commit提 ...

  7. git取消链接并删除本地库

    有的时候我们需要删除从GitHub上克隆下来的库 从github上clone一个仓库: git clone git@github.com:USERNAME/repo.git 在本地目录下关联远程rep ...

  8. git 取消未成功的 merge

    git 取消未成功的 merge # 合并时遇到冲突想取消操作,恢复index $ git merge --abort # 可以回退到某个提交 $ git reset --hard # 可以撤销某个提 ...

  9. git取消本地commit

    如果不小心commit了一个不需要commit的文件,可以对其进行撤销. 先使用git log 查看 commit日志 commit 422bc088a7d6c5429f1d0760d008d86c5 ...

随机推荐

  1. 生成report由Eamil定時寄出

    Blat 是一个命令行发邮件的小工具,仅支持简单的SMTP协议,需要SMTP服务器的支持. 官网:http://www.blat.net/    下载地址:https://sourceforge.ne ...

  2. 标注-隐马尔可夫模型HMM的探究

    1 HMM基本概念1.1 定义1.2 观测序列生成过程1.3 HMM的三个问题2 概率计算算法2.1 直接计算算法2.2 前向算法forward algorithm2.3 后向算法2.4 一些概率与期 ...

  3. [BZOJ2298] [HAOI2011] problem a (dp)

    Description 一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低.”问最少有几个人没有说真话(可能有相同的分数) Input 第一行一个整数n,接下来n行每行两个 ...

  4. MySQL配置文件

    [mysqld]datadir=/usr/local//mysql/data    #数据存放位置socket=/var/lib/mysql/mysql.sockuser=mysqllower_cas ...

  5. gulp配置

    /* gulp配置 */ /* gulp配置 */ var gulp = require('gulp'), concat = require('gulp-concat'), rename = requ ...

  6. c#多线程同步之lock

    一提起lock,想必大家都很熟悉,因为它易用,顾名思义,就是一把锁,常用于多线程的同步,一次只允许一个线程进入.最近遇到一个很诡异的bug. private static readonly objec ...

  7. .net framework 4.5 +steeltoe+ springcloud 实现服务注册功能

    首先得先了解并熟悉一下springcloud,并手动去搭建一个服务中心,具体可度娘教程. 如果是.net core的话,实现注册也是没有问题的,网上教程很多,可自行度娘. 最难的就是基于Framewo ...

  8. java--抽象类实例(包含静态内部抽象类)

    静态内部抽象类可以被继承. public class testfather { public static void main(String[] args) { person.talk2 a = ne ...

  9. OCR技术浅探:基于深度学习和语言模型的印刷文字OCR系统

    作者: 苏剑林 系列博文: 科学空间 OCR技术浅探:1. 全文简述 OCR技术浅探:2. 背景与假设 OCR技术浅探:3. 特征提取(1) OCR技术浅探:3. 特征提取(2) OCR技术浅探:4. ...

  10. git远程提交失败

    同步仓库并解决403报错 这时候对本地仓库和github进行同步 # git push -u origin master error: The requested URL returned error ...