ID: 6463 Fixed in:
Issue Date: 2012年05月08日 13:03 AEST Owner: CVS Support
Last Modified: 2017年05月18日 14:44 AEST Reporter: Arthur Barrett
Current Est. 0.0 hours % Complete: 0.0
Status: NEW / Severity: enhancement

Affected: 2.8.01
Description: enh: search repository

Actions:
2012年05月08日 13:03 AEST by Arthur Barrett - it would be great to be able to search the repository from the cvsnt client
There are lots of diffierent search possibilities, eg:
* lexical search (all the files/revisions which use GetCustomer(), or override NewCustomer()
* text search (find the most recent revision of blah.c that contains the string "this is a bug)
* binary search (find in word documents)
This is easier to do in EVS than CVSNT, but if we are incorporating an SQLite database, then all sorts of 
things are possible...
We previously offered this sort of thing using lxr from mozilla (now called mxr) and glimpse:
http://mxr.mozilla.org/
and
http://sourceforge.net/projects/lxr/
and
http://webglimpse.net/
This is also discussed in bug6084 under spotlight integration. I still like the idea that the host OS of the 
server could provide the engine for this rather than CVSNT itself.
Maybe Windows Search 4 - iFilter interface would be good enough...
http://msdn.microsoft.com/en-us/library/windows/desktop/dd940336(v=vs.85).aspx 
2012年05月08日 13:40 AEST by Arthur Barrett - There is a free Java-based full text search engine "Lucence" also used by Eclipse and Jira is this:
	http://lucene.apache.org/core/
There also seem to be Lucene ports to other languages:
	http://wiki.apache.org/lucene-java/LuceneImplementations
E.g. one for C++:
	http://sourceforge.net/projects/clucene/
2012年06月20日 10:14 AEST by Arthur Barrett - DXR has been popping up in my search results recently:
https://wiki.mozilla.org/DXR
eg:
http://zenit.senecac.on.ca/wiki/dxr/source.cgi/mozilla/toolkit/crashreporter/google-
breakpad/src/client/mac/handler/minidump_generator.cc
2013年04月02日 13:53 AEST by Arthur Barrett - There probably needs to be three parts to this:
- command line interface, 'cvs search' or 'cvs grep' or 'cvs find' 
 this could be based on 'cvs log' and there could be 'cvs rfind' like rlog
- WM GUI interface
- Web Interface/Server Side interface
The server probably also needs to distinguish between searchable and non-
searchable files. eg: a .doc is searchable but binary, and a .sln file is 
(probably) not searchable but text. This should *NOT* be a keyword attribute, 
but something more 'dynamic' so that files/revisions can be labelled for search 
one week, but then removed from searches later (or vice-versa).
There is already a GREP library linked into the 'core' - so at a 'minimum' this 
could be a simple grep search of the RCS files. It wouldn't give 'revision 
level' searches, but it would be 'something'.
2013年04月02日 23:59 AEST by Glen Starrett - Just brainstorming here: It would probably be useful to distinguish "metadata"
from "contents", and "on branch" vs "anywhere".
E.g. Search for specific contents on branch X, or search through comments.
2013年04月03日 12:12 AEST by Arthur Barrett - 
search options should include:
-w				dumb search everything/whole RCS file
-p				search 'user' properties
-c				search comments/log
-t				search 'text' (ie: contents)
-r[revisions]		search revision/range/branch - same -r syntax as log/rlog
-d dates			specify dates - same -d syntax as log/rlog 
-T				Use local time not GMT.
-w[logins]			Only search revisions checked in by specified logins.
-g				grep search
-e				egrep search
-l				lexical/keyword search
-ox				output xml
-ol				output just the names of files
-oe				output the extended search result
The first implementation (or the easiest to 'quickly' implement without the need for lexical analysis or any 
extra 'database' would be the 'whole RCS file' option: -w



Query page

AltStyle によって変換されたページ (->オリジナル) /