【问题标题】:Finding the author of a line of code in Mercurial在 Mercurial 中查找一行代码的作者
【发布时间】:2010-02-09 10:05:32
【问题描述】:

我如何找出谁负责特定的代码行?我知道行号和文件名,但我希望 Mercurial 告诉我该特定代码行的作者。有这个命令吗?

【问题讨论】:

    标签: mercurial


    【解决方案1】:

    在命令行中,您可能希望使用hg annotate -u-u 可以与-n 结合使用以获取本地修订号,这可能会派上用场)。更多选项请查看hg help anno

    【讨论】:

    • 我相信源自 SVN。
    • CVS 称之为annotate。在 SVN 中,命令的主要命令是 blame,尽管 annotatepraise 可以作为别名使用。
    • 澄清一下:这表明谁是最后一个编辑该行的人,不一定是谁最初创建的。
    【解决方案2】:

    我是"svn blame"的粉丝,所以我已经添加到我的~/.hgrc

    [alias]
    blame = annotate --user --number
    

    所以我可以输入"hg blame" ;-)

    【讨论】:

    • BTW hg blame 是一个默认命令,据我所知。我不知道它是否只是最近的,但它就在那里。当我查看帮助文件进行注释时引起了我的注意,其中显示了别名“责备”;)
    • Tovi7:我是在 2008 年 2 月添加的,所以它是 1.0 中的第一个。 hg.intevation.org/mercurial/crew/rev/07f2236c4dee
    【解决方案3】:

    如果您使用的是 TortoiseHG

    hgtk annotate <filename>
    

    或者通过在日志中找到文件,右键单击它并选择“注释文件”

    【讨论】:

    • 现在是thg annotate &lt;filename&gt;
    • “注释文件”是一个带有#号的按钮。
    【解决方案4】:

    我在 Tortoise Workbench 中找了很久;感谢@artemb 和@Steve Pitchers 为我指明了正确的方向。我还是花了一段时间才发现它。

    【讨论】:

    • 要进入左侧显示各个存储库文件的视图,请按下左上角显示的小按钮,即更改文件通常所在的位置。然后将鼠标悬停在每行的数字上,并在底部查看状态栏中的作者。
    【解决方案5】:

    在 tortoisehg 注释窗口中,有一个新的上下文菜单可以启用此功能。

    https://bitbucket.org/tortoisehg/thg/issues/1861/annotate-window-annotate-with-authors

    【讨论】:

      【解决方案6】:

      在命令行上,你可以使用 hg blame 或 hg annotate。

      $ hg blame -u -c -l Filename
      
      -u --user                list the author (long with -v)
      -c --changeset           list the changeset
      -l --line-number         show line number at the first appearance
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-15
        • 1970-01-01
        • 1970-01-01
        • 2012-08-21
        • 2015-03-09
        • 1970-01-01
        • 2016-10-14
        相关资源
        最近更新 更多