git cat-file type选项和p选项的区别

git cat-file type选项和-p选项的区别
git cat-file 查看对象内容
git cat-file [commit | blob | tree | tag] <object> 可以用来查看一个对象的内容,但要求object一定要和[commit | blob | tree | tag]相匹配

可以使用一个通用的option: -p
git cat-file -p object来搞定,这样就不用区分object的类型了

PS:不太明白为什么要提供 [commit | blob | tree | tag] ,它和-p的区别是什么