我想清理我的代码。我想做一个完整的 SVN 搜索以查找从未更改(或很久以前更改)的文件,并按 DESC 顺序列出所有内容(最旧更改为最近更改)。有没有办法做到这一点?
谢谢!
所有文件/文件夹的修订显示它们的最新更改,因此要检索文件,只需使用:
svn ls -Rv <URL_TO_REPO/PATH_TO_PROJECT>
您将收到如下列表:
<REV> <AUTHOR> <SIZE> <DATE> <filename>
您可以通过 unix 工具排序对它们进行排序,将它们轻松转换为 csv 文件并将其导入到 excel 或使用 --xml 开关并进行更复杂的处理。
注意:您只会看到当前文件。您不会看到任何已删除的文件。
最小的修订号会给你第一个提示,因为该变更集中的文件越早被更改。所以你可以像这样列出它们:
svn log URLReposRoot -v
在我看来,最好的解决方案是将历史记录作为 XML 文件注销,因为 xml 文件包含所有信息和所有文件。之后,您可以读取该 XML 文件并从中提取有关需求的信息。
svn log URLReposRoot -v --xml >result.xml
但这会导致更大的脚本,因为这并不是那么简单,特别是如果文件已被重命名或复制等。