Bir cevap istedim, kendim. Yalnızca siler çıktısını almak için aşağıdakileri deneyin svn log
.
svn log --stop-on-copy --verbose [--limit <limit>] <repo Url> | \
awk '{ if ($0 ~ /^r[0-9]+/) rev = $0 }
{ if ($0 ~ /^ D /) { if (rev != "") { print rev; rev = "" }; print $0 } }'
Bu, günlük çıktısını awk aracılığıyla filtreler . awk bulduğu her bir düzeltme satırını arabelleğe alır ve yalnızca silme kaydı bulunduğunda çıktı verir. Her revizyon yalnızca bir kez çıkarılır, bu nedenle bir revizyondaki birden fazla silme birlikte gruplanır (standartta olduğu gibi)svn log
çıktıda olduğu gibi).
--limit
Döndürülen kayıt miktarını azaltmak için bir belirtebilirsiniz . Ayrıca--stop-on-copy
, gerektiği gibi .
Tüm günlüğü ayrıştırma etkinliği konusunda şikayetler olduğunu biliyorum. Ben bu grep ve onun "geniş bir net döküm" -B
seçeneği daha iyi bir çözüm olduğunu düşünüyorum . Daha verimli olup olmadığını bilmiyorum, ama bir alternatif düşünemiyorum svn log
. @Alexander Amelkin'in cevabına benzer, ancak belirli bir isme ihtiyaç duymaz. Ayrıca benim ilk awk senaryom, bu yüzden alışılmadık olabilir.