1.查看历史版本
$ git log
$ git log --stat #记录我们可以看到每一次commit,都有哪些文件发生了改变
$ git show 8ef96 #查询某次具体的修改
2.回滚
发现提交的内容错了,可以进行回滚操作。
$ vi a.txt #修改文件内容
$ git add a.txt
$ git commit –m 'a.txt'
$ git log #查看日志
commit 8ef960a0bfa137a0fadd7494823d5d1c101c427d
Author: nutony <52399178@qq.com>
Date: Sat Jun 3 09:13:32 2017 +0800
a.txt
commit 315e77e5cceb486a9bf63911cb8d3549a19b8255
Author: nutony <52399178@qq.com>
Date: Sat Jun 3 09:07:43 2017 +0800
Delete 31.jpg
$ git revert 8ef960a #日志的commitId的前几位即可
3.远程仓库覆盖本地
$ vi a.txt #创建a.txt,设置内容为haha 1
$ git add . #暂存
$ git commit -m '1' #提交
$ git pull origin master #推送,此时查看github,a.txt存在
$ vi a.txt #编辑本地文件a.txt,修改内容haha 2
$ git fetch --all #只是下载代码到本地,不进行合并操作
$ git reset --hard origin/master #把HEAD指向最新的下载版本
$ ll
$ cat a.txt #可以看到文件还是为1,被远程覆盖
4.解决冲突绝招
如果冲突,自己修改的文件自己知道,则把修改的文件复制到其它目录,然后强制用远程覆盖本地文件,然后把修改的文件考回来覆盖。这样的好处是多人修改后,多个文件,修改起来太复杂。这样的方式非常方便高效。