GIT 如何删除某个本地的提交

一、rm后要commit一下才会生效,但这样只是让文件不再出现在今后的版本中,文件副本仍然会在.git/下(这样git才能让误删的文件恢复)。

要彻底消灭文件副本,那就要让文件彻底从历史中消失,分两种情况:

1、如果你的文件添加记录是最近1次,而且没有别的更改,可以简单使用reset --hard commit_id来彻底回溯,然后gc一下再上传就没问题了。

2、如果是在你N次提交以内的某次,而且同时还有别的重要提交,那最好用rebase合并一下这几次提交记录(包括rm的commit),然后再gc提交

二、撤销commit的一些方法

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

2、git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

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

三、其他一些方法

1、git revert 是撤销某次操作,此次操作之前的commit都会被保留

2、git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区

3、git reset --hard HEAD~1

4、git revert HEAD

时间: 2025-01-12 10:08:45

GIT 如何删除某个本地的提交的相关文章

使用Git命令窗口将本地工程提交至远程GitHub

目标: 1.解决的问题是如何通过Git命令窗口将本地工程提交至GitHub. 2.方便园友的同时也方便自己以后解决此类问题. 步骤: 1.首先登陆GitHub网站https://github.com/ 2.新建Repository 3.新建TicketBrushSystem的Repository,其中红框的几处可以根据实际情况自行填写. 成功后会出现如下界面 4.将TicketBrushSystem克隆到本地 4.1.使用Git Bash将工作目录切换到本地的工程文件目录,如,笔者的项目工程位于

git reset之后找回本地未提交的代码

头脑发热使用了git reset命令回退到了之前的一个版本,结果把本地没有提交的代码给覆盖掉了..... 作为一个bug员自然是想恢复,毕竟重新写还得再测一遍,本着能懒一点是一点的原则,开始了恢复代码的过程,保证以后再也不手贱le..... 首先我用的是eclipse的工具,或者别的工具大部分应该都适用,如果你没有使用工具,请忽略我的这篇文章.... 右击你修改过的文件,应该还能记得吧... Team-->Show Local History 看到一堆的缓存: 找到你reset之前的最近的一个时

Git 恢复误删除的本地仓库文件

在工作中使用首先使用git add *添加文件到本地仓库里,git commit -m "****"之后发现添加了一些自己不想提交的代码:所以使用了git rm *~删除了本地仓库里所有add的文件,最后发现本地代码也没有了,怎么办? 1.首先使用git log ./查看下最近一次commit的信息及时间    # git log ./ commit e2f22e1a4f2263441c86df0cf356e13ce20190b8 Author: zlyang999 <dba_m

git如何删除本地所有未提交的更改

位于分支 develop 您的分支与上游分支 'origin/develop' 一致. 未跟踪的文件: (使用 "git add <file>..." 以包含要提交的内容) :all :crm_overview :fm_overview :oa_overview :pm_overview dashboard#index git checkout . && git clean -xdf git如何删除本地所有未提交的更改,布布扣,bubuko.com

Git——如何将本地项目提交至远程仓库

参考文章:http://blog.csdn.net/dadaxiongdebaobao/article/details/52081826   git 将一个本地文件目录提交到远程仓库的步骤 参考文章:http://www.cnblogs.com/eedc/p/6168430.html   如何用命令将本地项目上传到git 1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库. git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里

Git——如何将本地项目提交至远程仓库(第一次)

1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库. git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点".",意为添加文件夹下的所有文件(夹). git add . 3.commit到主分支 git commit -m "描述" 4.登录github,把本地仓库提交至远程仓库. 接下来你要做的就是复制那个地址,然后你将本地仓库个远程仓库连接起来. git remote

git 如何删除本地创建的仓库(转载自 https://segmentfault.com/q/1010000002996177?_ea=262685)

可以先清除本地文件夹下的git文件,然后在重新初始化新建的git仓库 //删除文件夹下的所有 .git 文件 find . -name ".git" | xargs rm -Rf 接着add,commit等操作即可

Git学习(2)-使用Git 代码将本地文件提交到 GitHub

上次随笔写到git的安装和运用命令窗口创建本地版本库,这次主要讲一下用git代码将本地文件提交到GitHub上. 前提是有一个GitHub账号. 1.创建一个新的版本库,进入到你本地项目的根目录下(我的是/f/git-file/git-python),右键->Git Bash here,然后执行 git init 命令.   2.将要上传到GitHub上的文件拷到当前目录下(我的是File-Python),然后执行 git add "文件" 命令,将项目的所有文件添加到仓库中 3

git仓库删除所有提交历史记录

stackoverflow原问题地址:http://stackoverflow.com/questions/13716658/how-to-delete-all-commit-history-in-github 原文:http://blog.csdn.net/yc1022/article/details/56487680 经过本人测试,如果对于大型仓库,还不如删掉远程仓库重新创建来得快,以下步骤仅仅是减少了重新创建仓库的步骤 git仓库删除所有提交历史记录,成为一个干净的新仓库 1.根据当前分支