【问题标题】:Mercurial: get report with current repository stateMercurial:获取当前存储库状态的报告
【发布时间】:2015-12-16 12:31:50
【问题描述】:

我使用带有多个子存储库的 Mercurial 集成存储库。是否有任何命令可以获取当前存储库状态的某种报告或概览?

我想获取每个存储库的实际哈希码以及子存储库中更改的文件。

【问题讨论】:

    标签: mercurial


    【解决方案1】:

    status 命令知道子存储库,并将列出主存储库中的每个文件及其所有子存储库:

    hg status --subrepos
    

    在其输出中,它假定每个子存储库都已签出主存储库中的 .hgsubstate 文件中记录的修订;否则,它会显示相应子存储库的版本差异。

    我知道没有很好的解决方案来检查正在签出的正确版本。但是,您可以通过一些 bash foo 来获得它:

    for i in $(cat .hgsubstate | cut -f2 -d\  ); do
      if [ "$(hg log -r. -R$i --template='{node}')" != "$(cat .hgsubstate | grep $i$ | cut -f1 -d\  )" ]; then
        echo "$i has different checked-out version"
      fi
    done
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多