話說Git的命令集還是相當大的,爲了避免忘記,就在這裏開闢個回憶錄吧
其他人可能看不懂,哈哈
git rev-parse 部分
$ git rev-parse --symbolic --branches //查看分支
$ git rev-parse --symbolic --tags //查看里程碑
$ git rev-parse --symbolic --glob=refs/* //查看所有引用
$ git rev-parse HEAD //查看head對應的sha1哈希值
$ git rev-parse HEAD master //多個哈希值
$ git rev-parse A refs/tags/A //同樣是顯示A里程碑
$ git rev-parse A^{} A^0 A^{commit} //里程碑A的commit對象
$ git rev-parse A~3 A^^^ //記號~<n> 就相當於連續n個符號^
$ git rev-parse A^{tree} A: //里程碑A對應的目錄樹
$ git rev-parse A^{tree}:src/Makefile A:src/Makefile //表示樹裏面的文件
$ git rev-parse :gitg.png HEAD:gitg.png //暫存區裏的文件
$ git rev-parse :/"commit A" //在提交日誌中查找字符串顯示commit 對象
$ git rev-parse HEAD@{0} master@{0} //reflog相關語法
git rev-list 部分
$ git rev-list --online A //A的版本提交歷史
$ git rev-list --oneline D F //多個版本歷史並集
$ git rev-list --oneline ^G D //排除^版本的提交歷史
$ git rev-list --oneline G..D //相當於 ^G D
$ git rev-list --oneline B...C //三點,如B..C排除BC共同部分
$ git rev-list --oneline B^@ //提交歷史,自身除外
$ git rev-list --oneline B^! //提交本身不包括其歷史提交
git log 部分
$ git log --oneline F^! D
$ git log --graph --oneline //分支圖顯示
$ git log -3 --pretty=oneline //最近3條
$ git log -p -1 //-p顯示日誌同時顯示改動
$ git log --stat --oneline I..C //顯示每次提交的變更概要
$ git log --pretty=raw -1
$ git log --pretty=fuller -1
$ git log --pretty=oneline -1
$ git show D --stat //只查看和分析某一提交
$ git cat-file -p D^0 //同上, D^0 獲得里程碑D對應的提交
git diff
$ git diff <commit1> <commit2> -- <paths>
$ git diff <path1> <path2>
$ git diff --word-diff //逐字比較,我沒成功
git blame 文件追溯
$ git blame README //逐行顯示文件提交版本,提交人,提交時間
$ git blame -L 6,+5 README //只查看某幾行,使用 -L n,m