代码之家  ›  专栏  ›  技术社区  ›  Svish

单层水银原木

  •  25
  • Svish  · 技术社区  · 15 年前

    普通的 hg log

    changeset:   238:03a214f2a1cf
    user:        My Name <my.name@example.com>
    date:        Thu Aug 26 09:49:32 2010 +0200
    summary:     Added tag v1.1 for changeset f22fd3974361
    

    我的意思是要记住,有一个命令可以以更紧凑的方式打印日志,每个变更集只有一行。一种基本上可以在更改日志.txt文件和它看起来不错。

    3 回复  |  直到 15 年前
        1
  •  30
  •   Wai Ha Lee captain-yossarian from Ukraine    10 年前
     hg log --style compact
    

    您还可以使用模板以不同的格式显示注销

    hg help templates
    

    hg log --template "{node}\n"
    
        2
  •  53
  •   Giorgos Keramidas    15 年前

    hg log 用一个 --模板

    hg log --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n'
    

    $ hg log --limit 5 --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n'
    36ab2e3f8ebd | 2010-09-08 16:54:00 +0200 | agustin: textmodes/ispell.el (ispell-valid-dictionary-list): Simplify logic.
    9f3ac6d4a645 | 2010-09-08 16:42:54 +0200 | michael: Migrate to Tramp 2.2.  Rearrange load dependencies.
    8c696d2a7695 | 2010-09-07 20:01:23 +0200 | agustin: Make sure original ispell arg list is initialized in (ispell-start-process).
    b5f110747072 | 2010-09-07 06:23:16 +0000 | yamaoka: gnus-html.el (gnus-html-wash-tags, gnus-html-put-image): Mark cid and internal images as deletable by `W D D'.
    b53cfb7d099e | 2010-09-07 01:20:19 +0000 | yamaoka: gnus-async.el (gnus-html-prefetch-images): Autoload it when compiling; (gnus-async-article-callback): Fix typo.
    $
    

    一旦为变更集的单行摘要创建了一个好的模板,就可以添加一个命令 别名 ~/.hgrc 文件如下:

    [alias]
    shortlog = log --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n'
    

    hg shortlog , hg short 甚至 hg shor (唯一地识别 而不是 hg showconfig )以及所有常用的“log”命令选项。例如,现在可以键入:

    $ hg short -r 100:103
    db9f8efcf689 | 1990-09-14 19:07:14 +0000 | jimb: *** empty log message ***
    5874bf15e07d | 1990-09-19 18:22:41 +0000 | gnulists: Initial revision
    797d304414fd | 1990-09-27 21:17:59 +0000 | mtr: Initial revision
    b2656b7830e4 | 1990-10-09 02:52:33 +0000 | rms: *** empty log message ***
    $
    

    甚至是使用标记名的东西(mercurial crew存储库本身的示例):

    keramida@kobe:/hg/mercurial/crew$ hg short -r 1.4 -r 1.5 -r 1.6
    31ec469f9b55 | 2009-11-16 21:25:36 +0100 | mg: i18n-ja: fixed bad indentation
    ff2704a8ded3 | 2010-03-05 17:24:52 -0600 | mpm: mq: drop -Q in favor of --mq only
    f786fc4b8764 | 2010-06-29 12:12:34 +0200 | mads: log: follow filenames through renames (issue647)
    keramida@kobe:/hg/mercurial/crew$
    
        3
  •  6
  •   Kevin Beaudoin    10 年前

    即使原始注释包含多行,也要在一行上获取描述,请使用splitlines和join函数,如下所示:

    {join(splitlines(desc), ' ')}
    

    下面是我用来将数据提取为CSV的示例:

    hg log --template "{node};{date|shortdate};{branch};{author};{join(splitlines(desc), ' ')};{diffstat};files: {join(files, ', ')}\n"
    
    推荐文章