设计 Mercurial 的 CLI

作者:Steve Losh
日期:2010-01-15

Mercurial 的命令行接口很不错,但是再做一小点改进的话能让它做的更好!

Mercurial 拥有一个很棒的命令行接口并且很多人觉得使用它就已足够不再需要什么 GUI 来管理它们的代码库了。不管怎么说,我们可以通过利用 Mercurial 的模板特性来让其做的更好。

在本贴士中我会把我用的一些模板贴出来并向你展示应该怎么使用它们。如果你想对在实际工作中怎样使用模板了解更多细节的话,请查阅 hg help templating

如果你喜欢你看到的这些的话,你可以通过从 BitBucket 上它们的 代码库 中克隆来获取我的模板:

hg clone http://bitbucket.org/sjl/mercurial-cli-templates/

Note

我对我的终端配色进行了自定义,所以对你来说配色看起来会不一样。如果你喜欢我使用的配色方案的话你可以读读我写的有关它的 文章

[TOC]

简短的记录

之前的贴士 中我讲述了怎样去创建一个 hg slog 别名命令,它对于计数变更集非常有用。用以正确的格式的话它在你的日常工作中也会变得很用。我的 hg slog 命令输出如下:

../../_images/slog.jpg

为了使用这个模板你要 编辑你的~/.hgrc文件 包含以下内容:

[alias]
slog = log --style=/full/path/to/map-cmdline.slog

漂亮的记录

短的记录可以很好的对之前的一些变更集做一个快速的回顾,但是对一个特定的变更集要了解更多的细节的话我创建了一个 hg nlog 别名命令,它看起来像这样:

../../_images/nlog.jpg

为了使用这个模板你要 编辑你的~/.hgrc文件 包含以下内容:

[alias]
nlog = log --style=/full/path/to/map-cmdline.nlog

简单的图志

命令 graphlog 对于回顾有分支的库的历史来说相当的完美,但是我们能够使用另一个模板让其更紧凑和易读。结构看起来像是这样:

../../_images/glog.jpg

为了使用这个模板你要 编辑你的~/.hgrc文件 包含以下内容:

[alias]
sglog = glog --style=/full/path/to/map-cmdline.sglog

贡献

如果你还有其他你觉得有用的模板,或是对我的有什么改进的话,请随意在 BitBucket 上的库中进行 fork !