git撤销操作和历史查看(git log)

git查看历史和撤销操作

撤销提交

git commit --amend可以撤销上一次提交的内容,不过并不是撤销整个提交的记录,当使用这个命令之后可以修改提交信息,同时,这个命令也会自动将暂存区中的所有文件提交。如果自上次提交以来未做任何修改,比如在上次提交之后立即执行这个命令,那么快照会保持不变,所修改的只是提交信息。

首先修改Test7.md,并提交

假如这时候突然发现上一个提交中遗漏了一个Test8.md,这时候只需要将Test8.md添加到暂存区。并使用命令git commit --amend

可以在最上面一行修改提交信息,改成“modified Test7.md and add Test8.md.”然后保存并退出vim的编辑,这时候查看提交历史(git log):

可以发现提交信息已经更改。

撤销暂存的文件

在Files文件夹添加Test4.md并添加到暂存区中

如果想要撤销处于暂存区的Test4.md,根据git status的提示可以看出应该使用git reset HEAD Test4.md命令。此时再使用git status

可以看出Test4.md已经处于未被跟踪状态。

撤销对文件的修改

首先将已经处于暂存区的Test4.md做一些修改,再查看其状态:

根据status命令的提示也可以知道想要撤销对文件的修改需要使用命令git checkout --Test4.md这是再查看其状态:

可以发现文件恢复成了开始的样子。

但是并不太建议使用上面的命令,要注意的是在git中已提交的东西几乎都是可以恢复的,但是任何没有提交的东西丢失后很可能再也找不回来了。上面的命令就是将未提交的内容丢失了

查看历史

使用git log命令可以会按时间列出所有更新,会列出每个提交的SHA-1校验和,作者的名字和和电子邮件信息,提交时间和提交说明。

git log -p可以显示每次提交的内容差异,可以加上-2来仅仅显示最近两次的提交。

git log --stat 可以看到每次提交的简略的统计信息,也就是-p选项的简略版,当然也可以加上-2选项来显示最近两次的提交

还有一个常用的选项是--pretty,这个选项有一些内建的子选项可以选择,比如用oneline将每个提交放在一行显示,当查看的提交数很大时很有效果,另外还有short,full,fuller可以用,展示的信息或多或少有一些不同。

之前的-2选项其实是git中限制输出长度的选项,它限制了只显示最近的两条提交,另外还有按照时间做限制的选项,比如--sinceuntil也很有用

还有一个format选项,可以定制要显示的记录格式,在这里就不详细介绍了,一般用上面的命令足够。

原文地址:https://www.cnblogs.com/haoocker/p/12272560.html

时间: 2024-10-28 15:30:56

git撤销操作和历史查看(git log)的相关文章

git分支合并、撤销;git修改已push的commit信息; git 撤销操作;

git分支合并 1.分支代码提交 2.git branch 查询本地分支 3.git checkout 分支名1 切换分支到需要合并的分支上 4.git merge 分支名2  //选择要合并到 分支名1 的分支名2 eg: 如果develop_screen分支合并到develop分支上,这个时候切换到develop分支上, git merge develop_screen 5.合并之后可能会有冲突,可用git status 查看冲突代码 <<<<<<<  ===

掌握Git撤销操作,随心所欲控制文件状态

本文主要讨论和撤销有关的 git 操作.目的是让读者在遇到关于撤销问题时能够方便迅速对照执行解决问题,而不用去翻阅参数繁多的 git 使用说明. 一开始你只需了解大致功能即可,不必记住所有命令和具体参数.事实上,如果没有经过反复多次的操作,这些没血没肉的命令是很难被全部记清楚的,就算现在记住了,也会很快遗忘(天赋异禀,过目不忘者除外).建议读者在遇到特定问题时对照场景操作,多用几次自然就记住了. 首先,我们再看看上一篇文章中的这张图: git 命令和文件状态转换 这张图能让你一目了然的看到各种命

谈谈 git 撤销操作

在工作中,往往会因为一些误操作,想撤销代码,下面我简单介绍一下如何操作(如果不了解 git 的基础用法,可以点击这里:链接) 撤销本地修改 git checkout 文件 撤销所有文件 git checkout . 撤销所有文件 git clean -df 撤销所有文件也可以执行 git clean -df git reset --hard 撤销已经提交的修改 git revert 版本号 撤销已提交的修改也可以执行 git reset --hard 版本号 原文地址:https://www.c

git 撤销操作

从上图可以看出  我们如果要撤销 staged area 区域的东西 可以使用git  reset file  name 如果要撤销work dirctory  的可以使用 git checkout file  name 如果要撤销 work directory 的东西,我们可以使用 git  checkout HEAD  file name 如果要从work directory  提交到history  可以用  git  commit -a -m "备注说明"  or  git c

git撤销commit,但未git push的命令

在git push的时候,有时候我们会想办法撤销git commit的内容 1.找到之前提交的git commit的id git log 找到想要撤销的id 2.git reset –hard id 完成撤销,同时将代码恢复到前一commit_id 对应的版本 3.git reset id 完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改--------------------- 作者:在路上的码农 来源:CSDN 原文:https

git撤销操作

在本地更改了文件 用 git status 命令是能看到更改了哪些文件的 显示为红色修改的文件,接下来 git add <filename> 将修改的这个文件添加到暂存区 显示为绿色,通过git reset HEAD --<filename>  将通过 git add 添加的文件从缓冲区撤销 会重新变为红色 再通过 git checkout -- <filename>  撤销工作区的修改,回到你没有修改过的地方.同时这个命令可以用于你不小心改了好多你不想提交的文件,让文

git撤销操作总结

暂存区回退 git checkout -- 误删的文件名 该命令符合以下场景: 场景一 在某个分支上开发时,你不小心误删了其中一个文件,这时候你还没有add到暂存区 场景二 把某个已经add到暂存区但还没commit的文件的修改全部撤销 场景三 某文件自修改后还没有被add到暂存区,现在撤销修改就回到和版本库一模一样的状态 git reset HEAD 文件名 可以把暂存区的修改撤销掉,重新放回工作区(只是从暂存区撤出,并没有回滚修改的内容) 提交(commit)版本回退 首先git log 查

大白话说GIT常用操作,常用指令git操作大全

列一下在开发中用的比较多的git指令 git clone https://github.com/chineseLiao/Small-career // 克隆远程仓库到本地 git add . // 把修改的文件全选 git commit -m "这里是一些描述信息" // 把修改的提交到本地并添加描述 git pull // 拉取远程的代码 git push // 推送到远程 强制拉取,即覆盖本地修改,只用远程代码,使用下边指令集git fetch --all // 拉取仓库最新修改,

git commit 之后,撤销操作

搬运自:  git撤销操作 更多操作参见原地址. 修改最后一次提交 有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了.想要撤消刚才的提交操作,可以使用 --amend 选项重新提交: git commit --amend 此命令将使用当前的暂存区域快照提交.如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之前的一样. 启动文本编辑器后,会看到上次提交时的说明,编辑它确认没问题后保存退出,就会使用新的提交说明覆盖刚才失误的提交.