如果不小心commit了一个不需要commit的文件,可以对其进行撤销。
一、先使用git log 查看 commit日志
二、找到需要回退的那次commit的 哈希值,使用下面的命令进行回退
git reset --mixed commit_id
(如 git reset --hard 6b6bb39e0f5852311536f27a48e8277347a6ecdb)
三、学习延伸
1、 关于git reset命令,包括 --mixed,--soft --hard等,其中--mixed为默认方式,他们之间的区别如下:
1>. 不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息. 默认就是git reset –mixed
git reset
2>. git reset的默认方式,取消了commit ,取消了add
git reset --mixed
3>. 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset --soft
4>. 彻底回退到某个版本,本地的源码也会变为上一个版本的内容
git reset --hard
5>. 取消了commit
git reset --soft
6>. 取消了commit ,取消了add,取消源文件修改
取消了commit ,取消了add,取消源文件修改
git比较本地仓库和远程仓库的差异
1. 更新本地的远程分支
git fetch origin
或
git pull
2.本地与远程的差集 :(显示远程有而本地没有的commit信息)
git log master..origin/master
3.统计文件的改动
git diff--stat master origin/master
注释: # git diff <local branch> <remote>/<remote branch>
参考资料: git 取消本地commit 比较git本地仓库和远程仓库差异