【问题标题】:How to list all files of a Fossil repository, which have been deleted in the past?如何列出过去已删除的 Fossil 存储库的所有文件?
【发布时间】:2017-06-07 18:22:34
【问题描述】:

如何列出一个 Fossil 存储库的所有文件,这些文件过去已被删除?

我能想到的唯一解决方案是为时间轴中的每个修订版执行ls,以便在排序输出上执行diff

有没有更简单的方法?

艰难的道路:

#! /bin/bash
set -eu
prev_id=
fossil timeline -n 0 "$@" |
sed -n 's/^..:..:.. \[\([0-9a-f]*\)\] .*/\1/p' |
while read id; do
  if [ "$prev_id" ]; then
    diff <(fossil ls -r "$id" "$@"|sort) <(fossil ls -r "$prev_id" "$@"|sort) |
    egrep '^[<>]' |
    sed 's/^>/add/;s/^</del/' |
    sed "s/^/$id /"
  fi
  prev_id=$id
done

【问题讨论】:

    标签: bash fossil


    【解决方案1】:

    你可以使用:

    fossil sql "select name from filename"
    

    列出存储库中曾经存在的所有文件名。

    如果您只想要那些不再存在的,则必须排除出现在fossil ls 中的那些。

    【讨论】:

      猜你喜欢
      • 2011-08-26
      • 2019-10-03
      • 2011-06-04
      • 2020-02-25
      • 2013-06-03
      • 1970-01-01
      • 2011-08-25
      • 2018-06-11
      • 1970-01-01
      相关资源
      最近更新 更多