转git取消commit
如果不小心commit了一个不需要commit的文件,可以对其进行撤销。
先使用git log 查看 commit日志
- commit 422bc088a7d6c5429f1d0760d008d86c505f4abe
- Author: zhyq0826 <zhyq0826@gmail.com>
- Date: Tue Sep 4 18:19:23 2012 +0800
- 删除最近搜索数目限制
- commit 8da0fd772c3acabd6e21e85287bdcfcfe8e74c85
- Merge: 461ac36 0283074
- Author: zhyq0826 <zhyq0826@gmail.com>
- 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的更多相关文章
- git 取消commit
git如何撤销上一次commit操作 1.第一种情况:还没有push,只是在本地commit git reset --soft|--mixed|--hard <commit_id> git ...
- git commit后如何取消commit
在git使用中要如何取消commit但是还未push的操作? 通常,我们对修改的文件会先git add .,然后git commmit -m "注释",但是如果commit错了,想 ...
- [git] 细说commit (git add/commit/diff/rm/reset 以及 index 的概念)
http://kasicass.blog.163.com/blog/static/39561920133294219374/ 创建测试仓库 $ git init $ echo "line o ...
- git撤销commit 并保存之前的修改
撤销并保留修改 参数 –soft # 先进行commit ,之后后悔啦 $ git commit -am "对首篇报告研究员字段改为author_name" 执行git log ...
- Git 学习(三)本地仓库操作——git add & commit
Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...
- git 修改commit 的注释
git 修改commit 的注释 一:最新的一次提交 当你不小心,写错了提交的注视/信息,该如何处理呢.理论上,SCM是不应该修改历史的信息的,提交的注释也是. 不过在git中,其commit提 ...
- git取消链接并删除本地库
有的时候我们需要删除从GitHub上克隆下来的库 从github上clone一个仓库: git clone git@github.com:USERNAME/repo.git 在本地目录下关联远程rep ...
- git 取消未成功的 merge
git 取消未成功的 merge # 合并时遇到冲突想取消操作,恢复index $ git merge --abort # 可以回退到某个提交 $ git reset --hard # 可以撤销某个提 ...
- git取消本地commit
如果不小心commit了一个不需要commit的文件,可以对其进行撤销. 先使用git log 查看 commit日志 commit 422bc088a7d6c5429f1d0760d008d86c5 ...
随机推荐
- PHPExcel的使用
1.当然是下载PHPexcel的插件了 http://phpexcel.codeplex.com/ 2.应用插件 我把插件和需要用到的excel模板放的是不同文件夹的,excel我放在publi ...
- C#迭代语句、跳转语句--C#基础
1.foreach每执行一次内含的代码时,循环变量就会一次读取集合中的一个元素,不需要个数.循环变量只是一个只读的局部变量,这个值是不能修改的.char后的word是 foreach语句的迭代变量,它 ...
- webpack3配置字体图标和打包相关问题
webpak配置字体图标有两种方式 一.将字体图标和css打包到同一个文件中. 1.首先需要安装url-loader npm install --save-dev url-loader 2.相关配置如 ...
- 【BZOJ2428】均分数据(模拟退火)
[BZOJ2428]均分数据(模拟退火) 题面 BZOJ 题解 先说说黄学长的做法: 当温度比较高的时候,贪心 每次随机一个数,把他放进当前和最少的那一组里面 温度足够低的时候就完全随机然后转移 这样 ...
- 【BZOJ2809】【APIO2012】Dispatching(左偏树)
题面 Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个 ...
- [BZOJ1046] [HAOI2007] 上升序列 (dp)
Description 对于一个给定的S={a1,a2,a3,…,an},若有P={ax1,ax2,ax3,…,axm},满足(x1 < x2 < … < xm)且( ax1 < ...
- 画一个DIV并给它的四个角变成圆形,且加上阴影
<!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...
- Topshelf 一个简化Windows服务开发的宿主服务框架
Topshelf是 基于.net框架开发的宿主服务框架.该框架简化了服务的创建,开发人员只需要使用 Topshelf编写一个控制台程序,就能安装为Windows服务.之所以这样原因非常简单:调试一个控 ...
- JVM堆外内存随笔
一 JVM堆外内存 1)java与io(file,socket)的操作都需要堆外内存与jvm内存进行互相拷贝,因为操作系统是不懂jvm的内存结构的(jvm的内存结构是自管理的),所以堆外内存存放的是操 ...
- openflow 和 sdn (软件定义网络) 原理和教程
OpenFlow概述 OpenFlow简介 通俗的讲,OpenFlow是使用类似于API进程配置网络交换机的协议.OpenFlow的思路很简单,网络设备维护一个FlowTable并且只按照FlowTa ...