配置别名

    有没有经常敲错命令?比如 git status status 这个单词真心不好记。

    如果敲 git st 就表示 git status 那就简单多了,当然这种偷懒的办法我们是极力赞成的。

    我们只需要敲一行命令,告诉Git,以后 st 就表示 status

    $ git config —global alias.st status

    好了,现在敲 git st 看看效果。

    当然还有别的命令可以简写,很多人都用 co 表示 checkout ci 表示 commit br 表示 branch

    $ git config —global alias.co checkout

    $ git config —global alias.ci commit

    $ git config —global alias.br branch

    以后提交就可以简写成:

    $ git ci -m "bala bala bala…"

    —global 参数是全局参数,也就是这些命令在这台电脑的所有Git仓库下都有用。

    撤销修改 一节中,我们知道,命令 git reset HEAD file 可以把暂存区的修改撤销掉(unstage),重新放回工作区。既然是一个unstage操作,就可以配置一个 unstage 别名:

    $ git config —global alias.unstage 'reset HEAD'

    当你敲入命令:

    $ git unstage test.py

    实际上Git执行的是:

    $ git reset HEAD test.py

    配置一个 git last ,让其显示最后一次提交信息:

    $ git config —global alias.last 'log -1'

    这样,用 git last 就能显示最近一次的提交:

    $ git last

    commit adca45d317e6d8a4b23f9811c3d7b7f0f180bfe2

    Merge: bd6ae48 291bea8

    Author: Michael Liao <askxuefeng@gmail.com>

    Date: Thu Aug 22 22:49:22 2013 +0800



    merge & fix hello.py

    甚至还有人丧心病狂地把 lg 配置成了:

    git config —global alias.lg "log —color —graph —pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' —abbrev-commit"

    来看看 git lg 的效果:

    配置别名 - 图1

    为什么不早点告诉我?别激动,咱不是为了多记几个英文单词嘛!