Git-撤销 commit
git commit
操作是提交代码到本地仓库
git push
操作是提交代码到远程仓库
应该场景:
- 当突然发现提交的代码还有一个明显的错误或者想重新修改后再提交;
- 当发现 commit 的备注写错了,想重新修改 commit 备注;
🍏example:当仅仅只想修改 commit 备注时,可使用
git commit --amend
🍏example: 当想继续修改 commit 的内容时,使用
# 不删除工作区改动的代码,撤销commit,并且撤销 git add . 操作。
git reset --mixed HEAD^
# or
git reset HEAD^
example: 当想直接撤销commit时,当前工作区的代码也清楚,无法继续修改commit的内容,使用该命令。但是还是少用为妙
#完成这个操作后,就恢复到了上一次的commit状态。
git reset --hard HEAD^
git查看提交历史
git log
查看commit日志,会显示作者信息(用户名、邮箱地址),date和commit说明
查看最近五次commit记录
git log -5
查看最近3次commit记录以及查看每次commit的差异
git log -p -3
查看每次提交的简略统计信息,会显示提交相关的文件以及代码行数添加删除数量
git log --stat
查看最近两次commit的统计信息
git log --stat -2
查看当前git状态
git status
查看尚未暂存的文件更新了哪些部分
git diff
.git目录
ls -F1
config
config 文件包含项目特有的配置选项description
description 文件仅供 GitWeb 程序使用,我们无需关心。HEAD
HEAD 文件指向目前被检出的分支;hooks/
hooks 目录包含客户端或服务端的钩子脚本(hook scripts )info/
info 目录包含一个全局性排除(global exclude)文件, 用以放置那些不希望被记录在 .gitignore 文件中的忽略模式(ignored patterns)。objects/
objects 目录存储所有数据内容refs/
refs 目录存储指向数据(分支、远程仓库和标签等)的提交对象的指针;
详细:https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%92%A4%E6%B6%88%E6%93%8D%E4%BD%9C