有没有办法在整个存储库上运行 svn log (而不仅仅是检查主干)而不必检查它?
Posted
技术标签:
【中文标题】有没有办法在整个存储库上运行 svn log (而不仅仅是检查主干)而不必检查它?【英文标题】:Is there any way to run svn log on an entire repository (not just a checkout of trunk) without having to check it out? 【发布时间】:2010-08-20 11:54:00 【问题描述】:我有一个 Subversion 存储库,我们的 Atlassian Fisheye 实例由于一些意外提交 + 回退(即有人标记了整个存储库而不止一次标记了 /trunk,而几乎窒息)。 所以我想要做的是审核大于平均提交的 repo,并使用 svndumpfilter 执行转储+加载以删除错误提交。 不过,我在获取每个修订版的大小时遇到了一些麻烦。我快到了。我有以下确定使用带有主干结帐的 svn 日志可见的每个修订版的大小:
for r in `svn log -q | grep ^r | cut -d ' ' -f 1 | tr -d r`;
do echo "revision $r is " `svn diff -c $r | wc -c` " bytes";
done
但是,由于错误提交发生在主干之外,因此在(主干的)工作副本上运行 svn log 不会列出它们。 相反,我需要 svn log 的功能来运行存储库范围。 我可以签出整个存储库,但我没有必要的几天/几周来签出所有标签+分支。 有人可以帮我吗?
【问题讨论】:
【参考方案1】:当然,您可以指定svn log
的 URL:
svn log svn://server/repo
【讨论】:
谢谢Greg,我还必须在上面命令中的“svn diff -c $r”之后添加repo路径,它可以完美运行。 如果您在存储库的工作副本中,“svn log ^/”是该命令的压缩版本。 也可以和HTTP URL一起使用,svn log https:://svn.server.com/path/to/repo
以上是关于有没有办法在整个存储库上运行 svn log (而不仅仅是检查主干)而不必检查它?的主要内容,如果未能解决你的问题,请参考以下文章
将 sonarqube 扫描器配置为在云源存储库上作为云构建中的一个步骤运行