面向工资编程,面向面试学习!

Git 别名

Git 并不会在你输入部分命令时自动推断出你想要的命令。 如果不想每次都输入完整的 Git 命令,可以通过 git config 文件来轻松地为每一个命令设置一个别名。 例:

git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status

这样当你查看状态信息时只需输入 git st 命令。

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

git config --global alias.unstage 'reset HEAD --'

当输入 git unstage f1.py 命令时,等价于执行 git reset HEAD -- f1.py。

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

git config --global alias.last 'log -1 HEAD'
git checkout master
git last
commit a5c4e044f3c577f0d9e6815d7296823436a05ce5 (HEAD -> master, tag: v1.0)
Author: foxchenxi <58800545+foxchenxi@users.noreply.github.com>
Date:   Sat Dec 14 11:40:08 2019 +0800

Git 只是简单地将别名替换为对应的命令。 如果你想要执行外部命令,而不是一个 Git 子命令。 如果是那样的话,可以在命令前面加入 ! 符号。 如果你自己要写一些与 Git 仓库协作的工具的话,那会很有用。 我们现在演示将 git visual 定义为 gitk 的别名:

git config --global alias.visual '!gitk'