OpenGrok
en

OpenGrok

logo.png
"A wicked fast source browser"

 OpenGrok is a fast and usable source code search and cross reference engine. It helps you search, cross-reference and navigate your source tree. It can understand various program file formats and version control histories like Mercurial, Git, SCCS, RCS, CVS, Subversion, Teamware, ClearCase, Perforce, Monotone and Bazaar. In other words it lets you grok (profoundly understand) source code and is developed in the open, hence the name OpenGrok. It is written in Java.

OpenGrok is the tool used for the OpenSolaris source browser and search.
 

Downloads 

Requirements 

  • Latest Java (1.6 , 1.7 will not work with {OpenGrok versions < 0.12)
  • A servlet container like GlassFish or Tomcat (6.x, 7.x or later) also running  with Java at least 1.6
  • Exuberant Ctags 

javagetpowered.gif Created with NetBeans!

Screenshots

OpenGrok on OpenSolaris.org OpenGrok 0.2.1 now on Windows

Features

 OpenGrok provides

  • A fast search engine for programs, that can:
    • search for full text, definitions, symbols, path and revision history
    • limit searches to any subtree (hierarchical search)
    • incrementally update its index. i.e update only the changed files since last time it was updated
    • search query with Google like syntax (eg. path:Makefile defs:target)
    • search for files modified within a date range
    • search using wild cards like * (many characters) or ? (one character)
    • show the matching lines in search results
  • A read-only web interface for version control systems like Mercurial, CVS, SVN, SCCS or TeamWare that provides:
    • history log of a file
    • diffs between any two revision in formats like udiffs, sdiffs
    • cumulative history of a given directory (putback-log) also in RSS format
  • Online cross-reference with syntax high lighting, highly customizable look and feel using CSS stylesheets
  • Plugins can be written for new programing language or revision control systems

More information on setting up OpenGrok, its usage and known issues can be found on Documentation page.
 You can install the Solaris package by running pkgadd -d http://hub.opensolaris.org/bin/download/Project+opengrok/files/OSOLopengrok%2D0.10.pkg

Comparison with Similar Tools

(Disclaimer: this table might be obsolete, if you think it needs adjusting, please send us a mail to opengrok-discuss@opensolaris.org)

FeatureLXRctagscscopeViewVCGLOBALOpenGrok
Full text SearchY Y YY
Definition Search#YY YY
Identifier SearchY Y YY
Path searchY Y YY
History Search     Y
Caller/Callee Search  Y #
RegExp Search  Y Y# (only wildcards)
Shows matching lines YY YY
Hierarchical Search    YY
query syntax like AND, OR, field:     Y
Incremental update  # YY
RSS Feed   Y Y
Syntax highlighting-XrefY  #YY
Interface for SCM   YYY
open sourceYYYYYY
Usable URLsY-- YY
Individual file download --Y-Y
Changes at directory level --#-Y
Multi language support#Y#-YY
User interfaceWEBCLICLIWEBWEB / CLIWEB / CLI
Static HTML    Y#(for xrefs)
Input completion    Y#(with greasemonkey script)
Built-in parser YY Y#(lexical analysis)
Plug-in parser    Y
Integration with (exuberant) ctags -  YY
Integration with cscope  - Y
Integration with emacs YY Y
Integration with vim YY Y
Integration with doxygen    Y
Integration with Netbeans     
Integration with less Y  Y
Integration with bash    Y
Integration with idutils    Y
Integration with Elvis Y  Y

Legend:
Y : Yes the feature is present
# : the feature may be partly present
- : not applicable

Communication

Send your ideas for improvement or contributions to OpenGrok-discuss mailing list.

Bugs or feature requests should be reported at http://defect.opensolaris.org.

OpenGrok related blogs can be found using the opengrok tag.

Join the OpenGrok users group on Linked in.

License

OpenGrok is an open source project and is distributed under CDDL.
OpenGrok uses software libraries from Apache Software Foundation.
 This product includes software developed by CollabNet (http://www.Collab.Net/).

Tags:
Created by on 2009/10/26 11:40
Last modified by Vladimir Kotal on 2012/04/03 19:25

XWiki Enterprise 2.7.1.34853 - Documentation