我正在寻找一种方法来提取存储库中所有分支的信息。 我只是以分支机构的名义相互关联。
我曾尝试使用SVNKit,但未能弄明白,如何获取此信息。
答案 0 :(得分:3)
您应该记住本节中的两个重要课程。 首先,Subversion没有分支的内部概念 - 它只知道如何制作副本。复制目录时,生成的目录只是一个“分支”,因为您将该含义附加到该目录。您可能会以不同的方式考虑目录,或者以不同的方式对待它,但对于Subversion来说,它只是一个恰好带有一些额外历史信息的普通目录。
其次,由于这种复制机制,Subversion的分支作为存储库中的普通文件系统目录存在。这与其他版本控制系统不同,其中分支通常通过向文件集合添加额外的“标签”来定义。分支目录的位置与Subversion无关。大多数团队遵循将所有分支放入/ branches目录的约定,但您可以自由发明任何您希望的策略。
要获取分支名称,您需要知道有关存储库的内部结构的信息。我怀疑,获取所有分支有一种通用方法 - 因为它们只是本地副本。
答案 1 :(得分:1)
如果知道存储库结构,您可以使用SVNLogClient.doList(SVNURL, SVNRevision, SVNRevision, boolean, boolean, ISVNDirEntryHandler)
,也可以直接使用更低级别的SVNRepository
API。在
http://wiki.svnkit.com/Printing_Out_A_Subversion_Repository_Tree
答案 2 :(得分:-1)
在eclipse中执行ctrl + 3(BTW我最喜欢的Eclipse快捷方式),然后键入存储库,这样就可以选择打开SVN存储库视图。
打开视图后,如果未添加您的存储库,请添加它...添加后,您将能够将其展开并作为普通目录树浏览它,您将能够看到你所有的分支