git教程-基础命令(二)

查看提交历史

git log

按提交时间倒序显示,显示的内容有sha1校验码、提交人、邮箱和提交说明。
注:你查看完提交历史,有可能不能退出命令行,可以按一下键盘q,就能退出来了。

显示每次提交的内容
git log -p
显示最近两次的修改的内容
git log -p -2
显示简要的增改行数统计
git log --stat
改变日志的展示格式

每次提交信息在一行展示

git log --pretty=oneline

常用的格式

#查看更多的提交信息
git log --pretty=format:"%h - %an, %ar : %s"
#展示每个提交所在的分支及其分化衍合情况
git log --pretty=format:"%h %s" --graph
#这个比较的好看
git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

撤销操作

有时候发现有一些文件漏掉了,没有提交,所以就需要撤回上次的提交

git commit --amend

此命令将使用当前的暂存区域快照提交。如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之前的一样。

取消已经暂存的文件

git reset HEAD  file

取消对文件的修改

git checkout -- file

命令执行后的结果,这里分为三种情况

  • 文件修改还未加入暂存区:文件恢复到修改之前
  • 文件修改之后并且加入到暂存区:文件不会恢复到修改之前,必须先取消暂存,再撤销文件的修改
  • 文件修改并加入暂存区,之后又修改:文件恢复到上次暂存时的样子。
    :这是一条不安全的命令,使用时要谨慎,否则你的工作就有可能白干了!

小技巧

上边使用自定义的格式显示提交日志,有的命令比较长,不会每次都要用手敲吧?这里git也给出了解决方案--给命令起别名(alias)
修改~/.gitconfig文件,在文件里添加下列内容

[alias]
    lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
    cm = commit

这段代码的意思就是用lg替换后边那一长串命令,用cm替换commit

git lg
git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
git commit -m "备注"
git cm -m "备注"

上面这两组命令都是等效的。

你可能感兴趣的:(git教程-基础命令(二))