Documentation for GreenHopper 6.2.x. Documentation for earlier versions of GreenHopper is [available too].

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

GreenHopper 101

Welcome to GreenHopper 101, an introductory guide to the GreenHopper plugin for JIRA and a tour of the most interesting GreenHopper features. Use this page to guide your evaluation process or quickly get up to speed with GreenHopper.

Software developers are the intended audience for this document.

Getting Started

1. Installing GreenHopper

First things first. If you haven't already got the GreenHopper plugin up and running, carry out the following steps:

*Before you begin:*If you don't already have JIRA 4.0 or later installed, please follow the instructions in the JIRA Installation and Upgrade Guide.

Unable to render {include} The included page could not be found.

For more help on the technical procedures in this section, see the GreenHopper Installation Guide.

It should only take you a few minutes to install the GreenHoppper plugin. If you have any difficulty during the installation process, please contact our support team for assistance. They're ready to help at any time.

  1. Log in as a user with the 'JIRA Administrators' global permission.
  2. Bring up the JIRA administration page by clicking the 'Administration' menu on the top bar and selecting the 'JIRA Administration' option.
  3. Click the 'GreenHopper Licence' link under the 'System' section of the administration menu. This will display the 'GreenHopper License' screen.
  4. Enter your license details and click 'Add'.

GreenHopper license must match JIRA license

Please note, if you are using a commercial (i.e. not an evaluation) license for GreenHopper, it must match your JIRA license. For example, if you have a JIRA 25 User Commercial license you must have a GreenHopper 25 User Commercial license. GreenHopper evaluation licenses do not need to match JIRA licenses.

2. Configuring JIRA and GreenHopper

3. Add Users

GreenHopper was designed to improve team communication through sharing SCM artifacts, so you will probably want to add accounts for all your team members.  There are a few approaches that you can take to adding users:

  1. Leave GreenHopper in anonymous mode. There are two downsides here, anyone who can see GreenHopper, can see all the source and you won't be able to use email watches or save preferences.
  2. Built-in users with "public sign up". Anyone can create an account, but not especially secure.
  3. Built-in users. This is simple to set up for a small user base, however adding each user manually is not recommended for large-scale systems with many users.
  4. External authentication. This includes sources such as LDAP, Active Directory or similar.
    1. Atlassian Crowd. If you already have a Crowd server, this is a snap to set up.
    2. LDAP/Active Directory. You can point GreenHopper at your existing corporate directory. If you are familiar with LDAP, this should be easy.
    3. Host/PAM Authentication. You can use the local accounts from the physical machine GreenHopper is running on.

If you opt for accounts, be sure to make yourself and other relevant users GreenHopper administrators. You may also be interested in pre-loading users from LDAP/Crowd and setting repository level access control based on groups.

4. Configure Mail (optional)

GreenHopper can deliver email feeds based on user configured parameters. For example, you can watch the contributions of a specific colleague or changes to a branch of code you're working on. To take advantage of this feature, you will need to tell GreenHopper about your SMTP server.

5. Configure JIRA (optional)

  1. If you already have a JIRA server set up, you can go ahead and set up integration between the two. Once established, activity on relevant JIRA issues will appear in the GreenHopper activity stream. JIRA issue keys will also be hyperlinked, also a small information window will load when you mouse-over JIRA issue keys.
  2. Visit the GreenHopper documentation for instructions on how to set up JIRA integration in GreenHopper.

6. Setup Complete!

Congratulations! Our support records indicate that over 80% of support calls happen during this installation phase. Once you have made it this far, the rest of the evaluation ought to flow smoothly.

If you do need assistance, our support team is ready to help. Create an issue at our support system under the GreenHopper project.

There are heaps of tweaks and configuration options that you can experiment with. Check out the GreenHopper Administrator's Guide for more information.


Browsing Your Code Repository

In essence, GreenHopper is a tool that lets you view the contents of your Source Code Management (SCM) repository as a web page. Everything in your SCM is accessible in your web browser, quickly and easily.

7. Browsing & History

GreenHopper's Windows Explorer-style interface allows you to efficiently navigate your source tree and view the depths of your repository in a structured way. Select a file to view its entire revision history. See the documentation for more.

8. Full Source View

See the blame information associated with every line (allowing you to pinpoint who is responsible for every change). Author and age can be displayed as an aid to annotation. See the documentation for more.

9. Changesets & Diffs

Every commit and any diff can be viewed and easily linked to. This removes ambiguity from discussions in other mediums (such as discussions held via instant messaging, wiki pages, email, issue trackers and so on). See the documentation for more.


Activity & People

GreenHopper adds a modern social web dimension to the usually impersonal data stored in your Source Code Management (SCM) repository.

10. Activity Streams

This information appears as a stream on the Dashboard and other index pages, sorted chronologically showing you the latest changes. Updates can be viewed as an inline stream or RSS feed. See the documentation for more.

11. People Lists

On the People index page, you can see the commit history in global lines of code (LOC) that each person has contributed (expressed as a line graph) and their total number of commits. Also, the most recent piece of activity is shown as a clickable item. See the documentation for more.

12. People Pages

You can click on a person's name to see detailed information about their additions to the repository, showing details of their work and summaries of their activity. Additionally, you can see their work on tracked issues and code reviews if using GreenHopper with Crucible and JIRA integration is set up. See the documentation for more.

13. Your Personal Dashboard

Click the 'Dashboard' tab to see a stream of all your own activity; your personal code commits; your reviews (if you are using Crucible) and your tracked issue updates (if you are using JIRA). See the documentation for more.

14. Filtering The Changelog

Find the changes that you're seeking by filtering commits based on log message, path, author, date, branch (and other fields). This control is a snappy filter button under the Source tab.
See the documentation for more.


Reports & Search

Aggregate, audit and present your repository data with GreenHopper's powerful search and report functions.

15. Embedded Charts

Throughout the user interface, there are visualisations to help you view the activity in this area. The ubiquitous chart in GreenHopper plots net lines of code (that's just lines not NLOC for those who are interested) on the top and commit volume (the number of files committed) on the bottom. Note that this chart is generated on the fly based on what you are looking at, from the root down to individual files. On the changelog page the green bar shows you the period that is covered by the changesets on the page you are viewing. Clicking on the chart takes you to that point in time in your changelog.

See the documentation for more.

16. Custom Charts

To start using the more complex charts, click on the Chart tab on the right of the header, or "jump to detailed chart" on any of the baby charts. There is a lot of really cool stuff in these charts.

Some things to try:

  • Find out who your biggest contributors are - select "Show by Author" as a Pie chart.
  • See what file types you have committed - select "Show by Extension" then select your user ID as in the Author field.
  • See who has been changing the most lines in the last month - clear your selections and select "Show by Author" and a date a month prior in the "Start Date" field. If you have a lot of source the chart will probably be flat. If so, change the chart type to "Change", this will zero the line count at the start date.
  • Compare your changes against another person - pick yourself and another author (hold the 'control' key to select multiple) in the author list. This isn't very useful but can be a bit of fun!

Note that the committer gets a line for each line they add or change. The previous owner of a modified or deleted line loses one. Currently any change, even whitespace, counts.

See the documentation for more.

17. Plugin Reports

You can create your own report as a plugin and have it appear in the menu, under the 'Source' tab, and the 'Reports' sub-tab. For example, the 'Code Metrics' option that appears in the user interface is actually a plugin, added in to GreenHopper. You can use this plugin as a basis to create your own custom reports and add them in to GreenHopper. See the GreenHopper developer documentation for more.

18. Quick Search

The box in the top right corner of every page can be used to quickly search the repository. You can use syntax like author:anna to immediately return results which have "anna" in the author field. See the documentation for more.

19. Running Queries & EyeQL

Clicking 'Search' on the top navigation bar opens the Simple Search screen. Here, you have access to a wide range of powerful searching functionality including file content searching, and grouping results by changeset, revision, file or directory.

Sometimes, you need data from your repository retrieved and sorted in ways that are unique to your own situation, beyond what the pre-fab GUI can give you. From the Simple Search screen, click 'Switch to Advanced Search'. Here, you can build searches using GreenHopper's powerful embedded query language, called EyeQL.
See the search documentation and EyeQL Reference Guide for more.

20. Leveraging CSV and the REST API

When you need to extract repository data for a report, you can export the results of GreenHopper searches to a CSV (comma-separated values) file which imports directly into spreadsheets and other office applications. Simply select the radio buttons at the bottom of the Simple Search dialog and the CSV file will be generated automatically, prompting you to save the file.

With its own API (Application Programming Interface), GreenHopper is extensible. If you need GreenHopper to do more than it ships with and you've got programming chops of your own, the API allows you to build extensions to the application to suit your needs. See the API documentation for more.


Tips and Suggestions

Learn about some of the smart labour-saving features in GreenHopper.

21. Quick Nav

You can quickly find what you are looking for by typing one word or part of the name of what you are looking for. GreenHopper's Quick Nav feature will immediately show matches and suggestions below, before you've even pressed Enter or activated a proper search. Try typing a CSID to go directly to that page. See the documentation for more.

22. Favorites as Bookmarks

See the documentation for more.

23. Context Windows

Try hovering your mouse over the following links in GreenHopper to see the context windows:

24. Subscribe to SCM Updates

Every user can keep an eye on changes from RSS Feeds and Email Watches to the source directories that interest them or even individual files. The idea is to encourage people to subscribe to the level of notifications that suits them so the signal isn't lost in the noise. Here are two ways to test this out:

1. Set up a customised feed by going navigating to the changelog page. On the upper right hand corner of the changelog box, click on the Customised Feed URL. Fill in the feed attributes and use the constraints to get data about a specific users contributions to a specific branch of code. Select to subscribe either as an RSS feed or an email watch. For fun, you can comment on their code the moment they commit until they can't take it anymore.

2. Simulate a spontaneous watch request by surfing through the directories. Once you find an interesting contribution, hit the RSS button on the upper right hand corner of the changelog box to get updated on that particular file.

See the documentation for more.

25. Send Links to Your Code

A changeset, a diff, even a specific line in a specific revision can be linked. You'll find a lot of stuff is underlined. Keep this in mind as you evaluate GreenHopper, there are plenty of links that are crying out to be copied to clipboard and sent on to your teammates.

If you look at the URL structure, you'll see that GreenHopper URLs are very predictable and hence can be easily generated by hand. There are also some extra wrinkles that are great for bookmarks.

Useful Hacks:

  • Every line in an annotation is a permalink to that line, clicking the revision number in the gutter takes you to that line in the revision it was last changed (even when the line number is different). Add a post commit hook in your SCM that gives developers the GreenHopper link as soon as they commit.
  • Using the keyword HEAD will give you the latest version of file.
  • Use branch or tag names in place of revision numbers in diffs.
    See the documentation for more.


Advanced Features to Try

26. Advanced Configuration Options

The GreenHopper developers try and set sensible defaults so that everything "just works" in most situations. However, if you are a power user, there are lots of knobs to twiddle. Check out the documentation below to learn about the nitty gritty.


Thank you for reading this guide.

Thanks for taking the time to try GreenHopper using this guide. To help continue your journey, our support staff are always ready to answer your questions in the GreenHopper Forum, or solve specific problems at our support portal http://support.atlassian.com.

  • No labels