<h2>Direct Download @VERSION@</h2>
<ul>
<li><a href="@MAVEN_REPO@/org/eclipse/jgit/org.eclipse.jgit/@VERSION@/org.eclipse.jgit-@VERSION@.jar">org.eclipse.jgit.jar</a> (Raw API library)</li>
<li><a href="@MAVEN_REPO@/org/eclipse/jgit/org.eclipse.jgit/@VERSION@/org.eclipse.jgit-@VERSION@-javadoc.jar">org.eclipse.jgit-javadoc.jar</a> (JavaDoc archive)</li>
<li><a href="@MAVEN_REPO@/org/eclipse/jgit/org.eclipse.jgit.pgm/@VERSION@/org.eclipse.jgit.pgm-@VERSION@.sh">jgit.sh</a> (Self-contained command line executable)</li>
<li><a href="http://download.eclipse.org/jgit/site/@VERSION@/">JGit @VERSION@ Projects Overview</a> (Maven Site)</li>
<li><a href="http://download.eclipse.org/jgit/site/@VERSION@/apidocs/index.html">org.eclipse.jgit JavaDoc</a> (online JavaDoc)</li>
<li><a href="http://download.eclipse.org/jgit/site/@VERSION@/org.eclipse.jgit/clirr-report.html">JGit API changes since previous release</a> (online Clirr API changes report)</li>
</ul>

Find the list of older JGit versions <a href="http://wiki.eclipse.org/JGit/FAQ#Where_can_I_find_older_releases_of_JGit.3F">here</a>.

<h2>Maven Repository</h2>
<p>JGit can be consumed in a Maven build.  Multiple artifacts are available,
depending on the application's requirements:</p>
<pre>
  &lt;repositories&gt;
    &lt;repository&gt;
      &lt;id&gt;jgit-repository&lt;/id&gt;
      &lt;url&gt;@MAVEN_REPO@&lt;/url&gt;
    &lt;/repository&gt;
  &lt;/repositories&gt;

  &lt;!-- Core Library --&gt;
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.eclipse.jgit&lt;/groupId&gt;
      &lt;artifactId&gt;org.eclipse.jgit&lt;/artifactId&gt;
      &lt;version&gt;@VERSION@&lt;/version&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;

  &lt;!-- Smart HTTP Servlet --&gt;
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.eclipse.jgit&lt;/groupId&gt;
      &lt;artifactId&gt;org.eclipse.jgit.http.server&lt;/artifactId&gt;
      &lt;version&gt;@VERSION@&lt;/version&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;

  &lt;!-- AWT UI Helpers --&gt;
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.eclipse.jgit&lt;/groupId&gt;
      &lt;artifactId&gt;org.eclipse.jgit.ui&lt;/artifactId&gt;
      &lt;version&gt;@VERSION@&lt;/version&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;

  &lt;!-- JUnit Test Support --&gt;
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.eclipse.jgit&lt;/groupId&gt;
      &lt;artifactId&gt;org.eclipse.jgit.junit&lt;/artifactId&gt;
      &lt;version&gt;@VERSION@&lt;/version&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;
</pre>

<p>JGit is also available from Maven central:
<a href="http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.eclipse.jgit%22">JGit on Maven central</a>
</p>

<p>For SNAPSHOT versions of the upcoming release, the following repository can be used:</p>
<pre>
  &lt;repository&gt;
    &lt;id&gt;jgit-snapshot-repository&lt;/id&gt;
    &lt;url&gt;https://repo.eclipse.org/content/groups/jgit/&lt;/url&gt;
    &lt;snapshots&gt;
      &lt;enabled&gt;true&lt;/enabled&gt;
    &lt;/snapshots&gt;
  &lt;/repository&gt;
</pre>

<h2>P2 Installation</h2>
<p>JGit can be installed from the <a href="http://www.eclipse.org/egit/">EGit</a> repository:</p>
<ul>
<li>Main Site: <a href="http://download.eclipse.org/egit/updates">http://download.eclipse.org/egit/updates</a> (Recommended)</li>
<li>Kepler Site: <a href="http://download.eclipse.org/releases/kepler">http://download.eclipse.org/releases/kepler</a></li>
</ul>

<h2>Development Builds</h2>
<p>If you like to use the latest development version, you can install JGit from the EGit nightly repository:</p>
<ul>
<li>development build (master branch): <a href="http://download.eclipse.org/egit/updates-nightly">http://download.eclipse.org/egit/updates-nightly</a>.</li>
<li>maintenance build (latest stable branch): <a href="http://download.eclipse.org/egit/updates-stable-nightly">http://download.eclipse.org/egit/updates-stable-nightly</a>.</li>
</ul>

<p>You can also build JGit from scratch following our <a href="http://wiki.eclipse.org/EGit/Contributor_Guide#Builds">contributor guide</a>.</p>
