2017-01-23 11 views
2

過去に削除されたFossilリポジトリのすべてのファイルを一覧表示するにはどうすればよいですか?過去に削除されたFossilリポジトリのすべてのファイルを一覧表示するにはどうすればよいですか?

私が想像できる唯一の解決策は、シーケンスされた出力でdiffを実行するために、タイムラインのすべてのリビジョンに対してlsを実行することです。

もっと簡単な方法はありますか?

難しい方法:

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

答えて

6

は、あなたが使用することができます。

fossil sql "select name from filename" 

が今までリポジトリに存在していたすべてのファイル名をリストします。

もう存在しないものだけが必要な場合は、fossil lsに表示されるものを除外する必要があります。

関連する問題