用Unix风格的命令设置Git别名(git别名,git取消别名)

首先

很久不见。我仍然沉迷于Git别名,这次是第二篇相关文章。

在上一篇文章中,我介绍了一个名为alias.alias的别名,用于简化设置Git别名。然而,写完文章后,我注意到是否真的有必要将其作为别名,并决定重新创建一个新的别名。

实际上,Git有一个很巧妙的hack,可以使用路径添加了git-前缀的可执行文件作为子命令。这在git-flow中非常有名。
简单来说,当我们使用export PATH=”$HOME/bin:$PATH”时,只需在~/bin/目录下有一个名为git-subcommand的可执行文件,就可以像git subcommand …这样使用它了。
而且不仅限于特定的编程语言,无论是shell脚本、Python还是C++编译出来的可执行文件都可以。

既然如此,我们决定将别名转换为子命令形式,命名为 git-alias,这样可以增加写作的灵活性,也更容易维护。此外,我们还额外创建了 git-unalias,您现在可以像在Unix系统中一样删除别名了!

顺便说一下,我仍然使用Shell脚本编写。
由于代码变得相当庞大,也许不再适合使用Shell脚本了。

安装

$ git clone https://github.com/khiosorg/git-alias.git && cd git-alias
$ ./install.sh /usr/local/bin

修改./install.sh的参数,可以将其安装(即拷贝)到您喜欢的目录中。如果省略,则默认安装到/usr/local/bin目录下。
请记得添加路径通行证。

抱歉,我还没有写README。对不起。
我已经写了README!我觉得用糟糕的英语写反而难以理解。对不起。

Git-别名

$ git alias [-p] [name[=value] ... ]

-p: 一覧表示です。

取消Git的别名

$ git unalias [-ad] name [name ...]

-a: 全てのエイリアスを削除します。

-d: いわゆるdry runというやつです。

最后

因为我正在考虑添加一些功能的想法(如模式匹配、正则表达式、交互等),所以我将会继续进行一些小小的维护工作。偶尔可以去GitHub上看看哦,哈哈。

另外,我想介绍一个收集了许多git型子命令的库,它叫做git-extras。因为有很多不同的子命令,所以我觉得很有趣。还有git-alias也存在,但我自己的作品应该更强大!哈哈

广告
将在 10 秒后关闭
bannerAds