正在搜索svn提交

时间:2009-09-08 21:33:26

标签: svn version-control

另一个“这应该很容易,但我不知道该怎么做”问题......

我们有一个包含许多分支的SVN存储库。有没有办法提出一个问题,比如“我上周对所有分支机构做了什么承诺?”或者“所有修改包括对所有分支的文件X的更改?”

我可以在特定分支上进行日志记录并搜索它以获得一个分支的类似问题的答案,但是如何回答可能跨越多个分支的问题呢?

6 个答案:

答案 0 :(得分:5)

分支对Subversion并不特殊,它们只是目录。所以询问“我上周提交了什么”在单个目录,整个分支或整个存储库上没有什么不同。请记住,您可以通过将存储库URL传递给svn log来在整个存储库中执行此操作,而无需将其检出。

询问哪些修订版更改了跨分支的单个文件更难,因为就Subversion而言,这些是多个不同的文件。您必须svn log每个分支中的文件,或svn log整个存储库和过滤器。

答案 1 :(得分:4)

@derobert说的假设,假设今天是9月9日,你的主干/分支/标签在http://host/svn/project1

svn log -r {2009-09-02T07:00}:HEAD http://host/svn/project1

答案 2 :(得分:2)

您必须使用第三方工具(例如fisheye)或API(例如SVNKit)。请参阅相关讨论herehere

答案 3 :(得分:1)

TortoiseSVN中的show log对话框有一个统计按钮,按作者对提交进行分组。如果您碰巧使用TortoiseSVN,这将回答您的第一个问题。

答案 4 :(得分:0)

浏览Subversion存储库的一种方法是使用git svn将整个存储库,分支和所有存储库导入Git存储库。然后,您可以使用gitk等工具查看存储库。由于Git存储库是完全本地的,因此gitk等工具可以轻松访问整个存储库,并且它们快速,非常快。

答案 5 :(得分:-1)

噢,让我们成为程序员......下载图书馆SharpSVN并自己动手。