git使用小技巧
git在项目开发中地使用频率是很频繁的,所以,掌握一些git使用的小技巧可以大大提高开发效率,减少一些不必要的工作。
自动修剪
我们知道当执行git fetch或git pull时,可以使用 –prune选项 自动删除在远程上已经删除而在本地依然存在的分支。但是有这么一种情况:当有人删除了一个远程分支,而我不知道,所以在执行git fetch或git pull时没有添加–prune选项,这样就会导致已经删除的远程分支在本地依然存在,然后在本地执行git push时,就会将远程已删除的分支重新推到远程,那么,有没有可行的解决方案,让我们在执行git fetch 或git pull 时自动使用修剪模式(即默认就添加了–prune选项),而不必每次指定它?git 是提供有这个功能的,按照以下设置即可实现。
使所有仓库都使用自动修剪模式,可以添加全局设置,如下:
git config --global fetch.prune true
也可以指定某个仓库使用自动修剪模式,如下:
git config remote.origin.prune true
单行日志
在查看提交记录时,如果想让内容简洁明了,可以使用单行模式
git log --oneline --decorate --all --graph
如果感觉命令太长记不住,可以给这条命令添加一个别名 oneline
git config --global alias.oneline 'log --oneline --decorate --all --graph'
效果如下

限制日志条数
让记录条数比较多时,可以限制commit记录的显示条数,比如,显示最近6条commit记录
git log -6
修改Git默认分页器
当执行git log 或git diff等命令时,因为输出内容较多,往往会超出一页,这是就会触发git 默认的分页器(less)进行分页,需要来回按上下箭头查找所需内容,且退出时需要按q。如果不想进行这些操作,执行命令后一下输出所有内容,通过滚动来查看,可以执行这个命令:
git config --global core.pager cat
commit 助手
当执行git commit时,有时会不知道本次做了哪些改动,无法填写备注信息,这时可以加上-v 选项,查看本次提交代码有哪些改动,既可以提醒我正在提交的内容,也可以最终检查它是否符合我的期望,并且diff不在保存的提交消息中。
git commit -v