git的撤销

一.修复更早的commit

1》没有push,但不是最近的commit

git commit --squash  <SHA>    创建新commit                          HEAD^~:HEAD~4往前第4个,倒数第五个

--fixup                    不提示为新合并的commit

git rebase --autosquash -i        激活交互式的rebase编辑器,从顶端到底部运用commit

-i (修改的话,把pick——>reword;squash/fixup)                         大量的撤销,恢复

二.停止追踪一个文件

git rm --cashed

三.撤销已公开的改变

git revert

四.修正最后一个commit消息

git commit --amend -m

五.撤销本地修改(没commit)

git checkout

六.重置本地修改(commit后但没push)

git reset --hard(撤销提交和修改内容)

六、1-----撤销本地修改后再恢复

git reflog /git reset/git checkout

时间: 2024-11-05 00:10:53

git的撤销的相关文章

【转】如何在Git中撤销一切

翻译:李伟 审校:张帆译自:Github 任何一个版本控制系统中,最有用的特性之一莫过于 “撤销(undo)”操作.在Git中,“撤销”有很多种含义. 当你完成了一次新的提交(commit),Git会及时存储当前时刻仓库(repository)的快照(snapshot):你能够使用Git将项目回退到任何之前的版本. 下文中,我将列举几个常见的.需要“撤销”的场景,并且展示如何使用Git来完成这些操作. 一.撤销一个公共修改 Undo a "public" change 场景:你刚刚用g

如何在 Git 里撤销(几乎)任何操作

任何版本控制系统的一个最有的用特性就是"撤销 (undo)"你的错误操作的能力.在 Git 里,"撤销" 蕴含了不少略有差别的功能. 当你进行一次新的提交的时候,Git 会保存你代码库在那个特定时间点的快照:之后,你可以利用 Git 返回到你的项目的一个早期版本. 在本篇博文里,我会讲解某些你需要"撤销"已做出的修改的常见场景,以及利用 Git 进行这些操作的最佳方法. 撤销一个"已公开"的改变 场景: 你已经执行了 git

Git各种撤销操作

撤销git add操作 git reset HEAD <file> # 取消add操作并保留修改 git checkout -- <file> #若继续该命令,则会删除掉刚刚的修改内容 撤销git commit操作 git reset --soft <commit_id> #可以回退到某个commit并保存之前的修改 <commit_id>从git log中取,取前7位即可 git reset --hard <commit_id> #回退到某个c

转!!git如何撤销上一次commit(或已push)

原博文地址 : https://www.cnblogs.com/lyy-2016/p/6509707.html git如何撤销上一次commit操作 1.第一种情况:还没有push,只是在本地commit git reset --soft|--mixed|--hard <commit_id> git push develop develop --force (本地分支和远程分支都是 develop) 这里的<commit_id>就是每次commit的SHA-1,可以在log里查看到

Git命令——撤销操作

Git用于撤销的操作主要有以下几个: $ git reset HEAD <file>...  # 撤销暂存的文件 $ git reset --hard HEAD    # 撤销工作目录中所有未提交文件的修改内容 $git checkout -- <file>...  # 撤销指定未提交文件的修改内容 1. 撤销暂存的文件 对于已经暂存的文件,可以 $ git reset HEAD <file>... 命令来取消暂存.例如,文件file2.md已暂存: 运行$ git r

git基础③撤销修改

git跟踪并管理的不是文件,而是修改,可以把创建一次文件也看做修改  文件只要没有git add添加到暂存区,系统默认还是在工作区, 那么commit是不能提交到目录树分支的 撤销修改的内容 1.错误发现的及时,只要把文件回退到上一个版本的转态就好. 2.丢弃工作区的修改: git checkout -- 加文件名   git checkout -- 1.php 命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

git杂记-撤销操作

覆盖上一次的提交或重新更新提交说明 $ git commit --amend -m '我再次提交啦,上一次的提交已经不见啦.这是一个危险的操作哦.哈哈,其实并不危险,也是可以数据恢复的啦' 取消已暂存的文件,让文件回到本地已修改的状态 /* $ git add * $ git status On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) renamed

git --如何撤销已放入缓存区(Index区)的修改

修改或新增的文件通过 git add --all 命令全部加入缓存区(index区)之后,使用 git status 查看状态(git status -s 简单模式查看状态,第一列本地库和缓存区的差异,第二列缓存区和工作目录的差异),提示使用 git reset HEAD <file> 来取消缓存区的修改. 不添加<file>参数,撤销所有缓存区的修改. 另外可以使用 git rm --cached 文件名 ,可以从缓存区移除文件,使该文件变为未跟踪的状态,同时下次提交时从本地库中

Git命令——撤销修改

Git命令 1. 撤销修改 (1) 当改乱了工作区(working directory)某个文件的内容,想直接丢弃工作区中的修改时,用命令git checkout -- file. (2) 当不但改乱了工作区某个文件的内容,还添加到了暂存区(stage),想丢弃修改,分为两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作. (3) 已经提交了不合适的修改到版本库时,想要撤销本次提交,参考"回退". 2. 删除文件 通常,我们直接在文件管理器中把