2010-01-06 62 views
1

这是我工作的公司使用CVS作为源代码控制,我们有一个Intranet应用程序(Source Forge的),其暴露库也就是说,我们可以使用该界面显示的源文件,但它不提供任何搜索工具,在那里我可以搜索给定关键字的代码片段。如何搜索CVS存储库?

我想写它可以搜索代码snippet.Ex的应用程序。将Koders.com提供搜索给定的关键字,并提供一个链接来浏览源文件。这两种方式我能想到的是

在CVS仓库(对于该访问可能是一个问题。)1 - 搜索

2:搜寻暴露所有的源文件的Intranet应用程序。

你们怎么想到会是正确的做法。我打算在一个单独的数据库中索引它,并将其用于搜索,但不知道如何做到这一点。任何帮助表示赞赏:)

+0

为什么不把代码片段到不同的存储库,如数据库? – 2010-01-06 10:20:04

+0

这需要额外的努力。因为所有的开发人员都在cvs中检查代码,所以从原始位置进行搜索会很好。 – Kapil 2010-01-06 10:21:18

+0

区分*代码段*与其他检入的代码有什么区别?或者你只是想通过CVS提交评论搜索? – Tarydon 2010-01-06 10:24:19

回答

1

当有人问我这个问题:“我们有一个叫做somefile.txt CVS库中的文件吗?”或者“我们有一个包含一些文字的文件吗?” (因为我有权访问底层存储库),我只是在CVSROOT上运行了find命令。这样做时,请记住CVS使用RCS存储文件,因此文件附加了,v。因此,在寻找somefile.txt时,您必须查找名为somefile.txt,v的文件。

find $CVSROOT -type f -name somefile.txt,v

find $CVSROOT -type f -exec grep sometext {} \;(它可能需要更复杂些做很好,但你的要点)

如果该文件已被“删除”,你会看到它在Attic目录中。此外,请小心不要编辑这些,v文件,因为它很容易中断。

如果您没有访问,那么你不得不检查整个仓库,然后在本地计算机上搜索,但你不能有效地得到一个搜索历史。