OpenSolaris

You are not signed in. Sign in or register.

OpenSolaris Project: OpenGrok

View the leaders for this project
Project Observers

Endorsing communities

Internationalization and Localization
Tools

OpenGrok
"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 and Bazaar. In other words it lets you grok (profoundly understand) the open source, hence the name OpenGrok. It is written in Java.

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

Downloads

Requirements


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://www.opensolaris.org/os/project/opengrok/files/OSOLopengrok-0.6.1.pkg

Comparison with Similar Tools

Feature LXR ctags cscope ViewVC OpenGrok
Full text Search Y Y Y
Definition Search # Y Y Y
Identifier Search Y Y Y
Path search Y Y Y
History Search Y
Caller/Callee SearchY
RegExp SearchY# (only wildcards)
Shows matching lines Y Y Y
Hierarchical Search Y
query syntax like AND, OR, field: Y
Incremental update # Y
RSS FeedY Y
Syntax highlighting-Xref Y # Y
Interface for SCM Y Y
open source Y Y Y Y
Usable URLs Y - - Y
Individual file download - - Y Y
Changes at directory level - - # Y
Multi language support# Y # - Y
User interfaceWEBCLICLIWEBWEB / CLI
Legend:
Y : Yes the feature is present
# : the feature may be partly present
- : not applicable

Send your ideas for improvement or contributions to OpenGrok-discuss Forum. Bugs or feature requests should be reported at http://defect.opensolaris.org.

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/).

Announcements

17 Oct 2008 OpenGrok 0.7 released
11 Apr 2008 OpenGrok 0.6.1 released
12 Mar 2008 OpenGrok 0.6 released
01 Nov 2007 OpenGrok category added to Bugzilla at defect.opensolaris.org
20 Aug 2007 OpenGrok 0.5 released

News

OpenGrok 0.7 has been released | Linux Weekly News | 10/17/2008

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 and Bazaar. In other words it lets you grok (profoundly understand) the open source, hence the name OpenGrok. It is written in Java, and is OSS under the CDDL license.

OpenGrok 0.3 Released | OSNews.com | 02/22/2006

Another release of OpenGrok, made possible due to many contributions of Trond Norbye, a new member of OpenGrok team. OpenGrok 0.3 has been released. This new version introduces support for Subversion and a new GUI. There's also an article available describing OpenGrok's internals.

Story of OpenGrok, Source Code Browser | OSNews | 12/09/2005

OpenGrok in that sense is a true enabler for source code that is open source. It lets people easily and quickly find the source code, look at it, understand the history and changes made to the source. It certainly has made my life easy when I am looking for security holes in software.

Sun releases OpenSolaris file system | ZDNet | 11/17/2005

"As part of the OpenSolaris project, the company on Tuesday also released a source code browser called OpenGrok, which is designed to help programmers search and view source code.

Blogs

trond - Using CVS with pserver access with OpenGrok

Apr 19, 12:28 PM

Today I pushed two fixes into OpenGrok so that you may use OpenGrok on sources you checked out via the pserver protocol in CVS. From a performance perspective I would not recommend that you use this ...

trond - Using Subversion with OpenGrok

Apr 14, 6:45 PM

In my previous blog entry Using CVS with OpenGrok I showed the steps needed to configure OpenGrok with CVS, and in this entry I will extend that example to include a project using Subversion. The ...

trond - Using CVS with OpenGrok

Apr 10, 5:44 AM

If you look at the mail archives for OpenGrok it seems that the most popular question out there right now is how to configure OpenGrok with CVS. Personally I have extremely limited experience with ...

Knut Anders Hatlen - OpenGrok 0.7 has been released

Oct 17, 6:13 AM

OpenGrok 0.7 was released earlier today, approximately six months after the previous release, OpenGrok 0.6.1. This release contains many new features, including: Support for more version control ...

Jorgen Austvik - OpenGrok 0.7 is Released

Oct 17, 5:22 AM

OpenGrok 0.7 has just been released ! I worked on the Git backend, and on improving the quality. Well, not only improving it - it seems like a fix to make it compile on Java 1.5 didn't really fix the ...