2016-04-15 54 views
1

我將如何獲取存儲庫中曾經存在的所有Subversion分支的列表?例如,/ branches文件夾的內容包含活動/打開的分支,但是如何在HEAD修訂之前列出該路徑下的分支已關閉(已刪除)?有時候我想回顧一下我在老退休分店專門做的一些工作,但我不記得修訂範圍很容易找到它。如何獲取所有修訂版本中關閉/刪除的Subversion分支的列表?

回答

1

我寫了一個「快速」單線程迭代Subversion repo URL範圍,排序並刪除重複項。 svn help ls的輸出表示不允許修改範圍,所以我認爲這可能是列出過去的唯一方法。

R1=1; R2=7; URL="https://.../branches" \ 
OUTPUT=""; \ 
for ((REV=$R1; REV<=$R2; ++REV)); do \ 
    echo "Processing revision $REV"; \ 
    OUTPUT="$OUTPUT\n$(svn ls $URL -r$REV 2>/dev/null;)"; \ 
done; \ 
echo -e "$OUTPUT" | sort | uniq | sed -e 's/\/$//'; 

輸出示例:

Processing revision 1 
Processing revision 2 
Processing revision 3 
Processing revision 4 
Processing revision 5 
Processing revision 6 
Processing revision 7 

branch-deleted-in-r2 
branch-deleted-in-r5 
branch-stale-but-still-alive 
some-branch-removed-r5 
some-current-branch 
相關問題