| Java Git | 
 | ======== | 
 |  | 
 | An implementation of the Git version control system in pure Java. | 
 |  | 
 | This package is licensed under the EDL (Eclipse Distribution | 
 | License). | 
 |  | 
 | JGit can be imported straight into Eclipse, built and tested from | 
 | there, but the automated builds use Maven. | 
 |  | 
 | - org.eclipse.jgit | 
 |  | 
 |     A pure Java library capable of being run standalone, with no | 
 |     additional support libraries. It provides classes to read and | 
 |     write a Git repository and operate on a working directory. | 
 |  | 
 |     All portions of JGit are covered by the EDL. Absolutely no GPL, | 
 |     LGPL or EPL contributions are accepted within this package. | 
 |  | 
 | - org.eclipse.jgit.ant | 
 |  | 
 |     Ant tasks based on JGit. | 
 |  | 
 | - org.eclipse.jgit.archive | 
 |  | 
 |     Support for exporting to various archive formats (zip etc). | 
 |  | 
 | - org.eclipse.jgit.http.apache | 
 |  | 
 |     Apache httpclient support | 
 |  | 
 | - org.eclipse.jgit.http.server | 
 |  | 
 |     Server for the smart and dumb Git HTTP protocol. | 
 |  | 
 | - org.eclipse.jgit.pgm | 
 |  | 
 |     Command-line interface Git commands implemented using JGit | 
 |     ("pgm" stands for program). | 
 |  | 
 | - org.eclipse.jgit.packaging | 
 |  | 
 |     Production of Eclipse features and p2 repository for JGit. See the JGit | 
 |     Wiki on why and how to use this module. | 
 |  | 
 | Tests | 
 | ----- | 
 |  | 
 | - org.eclipse.jgit.junit | 
 |  | 
 |     Helpers for unit testing | 
 |  | 
 | - org.eclipse.jgit.test | 
 |  | 
 |     Unit tests for org.eclipse.jgit | 
 |  | 
 | - org.eclipse.jgit.ant.test | 
 | - org.eclipse.jgit.pgm.test | 
 | - org.eclipse.jgit.http.test | 
 | - org.eclipse.jgit.junit.test | 
 |  | 
 |     No further description needed | 
 |  | 
 | Warnings/Caveats | 
 | ---------------- | 
 |  | 
 | - Native smbolic links are supported, provided the file system supports | 
 |   them. For Windows you must have Windows Vista/Windows 2008 or newer, | 
 |   use a non-administrator account and have the SeCreateSymbolicLinkPrivilege. | 
 |  | 
 | - Only the timestamp of the index is used by jgit if the index is | 
 |   dirty. | 
 |  | 
 | - JGit requires at least a Java 8 JDK. | 
 |  | 
 | - CRLF conversion is performed depending on the core.autocrlf setting, | 
 |   however Git for Windows by default stores that setting during | 
 |   installation in the "system wide" configuration file. If Git is not | 
 |   installed, use the global or repository configuration for the | 
 |   core.autocrlf setting. | 
 |  | 
 | - The system wide configuration file is located relative to where C | 
 |   Git is installed. Make sure Git can be found via the PATH | 
 |   environment variable. When installing Git for Windows check the "Run | 
 |   Git from the Windows Command Prompt" option. There are other options | 
 |   like Eclipse settings that can be used for pointing out where C Git | 
 |   is installed. Modifying PATH is the recommended option if C Git is | 
 |   installed. | 
 |  | 
 | - We try to use the same notation of $HOME as C Git does. On Windows | 
 |   this is often not the same value as the user.home system property. | 
 |  | 
 |  | 
 | Package Features | 
 | ---------------- | 
 |  | 
 | - org.eclipse.jgit/ | 
 |  | 
 |     * Read loose and packed commits, trees, blobs, including | 
 |       deltafied objects. | 
 |  | 
 |     * Read objects from shared repositories | 
 |  | 
 |     * Write loose commits, trees, blobs. | 
 |  | 
 |     * Write blobs from local files or Java InputStreams. | 
 |  | 
 |     * Read blobs as Java InputStreams. | 
 |  | 
 |     * Copy trees to local directory, or local directory to a tree. | 
 |  | 
 |     * Lazily loads objects as necessary. | 
 |  | 
 |     * Read and write .git/config files. | 
 |  | 
 |     * Create a new repository. | 
 |  | 
 |     * Read and write refs, including walking through symrefs. | 
 |  | 
 |     * Read, update and write the Git index. | 
 |  | 
 |     * Checkout in dirty working directory if trivial. | 
 |  | 
 |     * Walk the history from a given set of commits looking for commits | 
 |       introducing changes in files under a specified path. | 
 |  | 
 |     * Object transport | 
 |       Fetch via ssh, git, http, Amazon S3 and bundles. | 
 |       Push via ssh, git and Amazon S3. JGit does not yet deltify | 
 |       the pushed packs so they may be a lot larger than C Git packs. | 
 |  | 
 |     * Garbage collection | 
 |  | 
 |     * Merge | 
 |  | 
 |     * Rebase | 
 |  | 
 |     * And much more | 
 |  | 
 | - org.eclipse.jgit.pgm/ | 
 |  | 
 |     * Assorted set of command line utilities. Mostly for ad-hoc testing of jgit | 
 |       log, glog, fetch etc. | 
 |  | 
 | - org.eclipse.jgit.ant/ | 
 |  | 
 |     * Ant tasks | 
 |  | 
 | - org.eclipse.jgit.archive/ | 
 |  | 
 |     * Support for Zip/Tar and other formats | 
 |  | 
 | - org.eclipse.http.*/ | 
 |  | 
 |     * HTTP client and server support | 
 |  | 
 | Missing Features | 
 | ---------------- | 
 |  | 
 | There are some missing features: | 
 |  | 
 | - gitattributes support | 
 |  | 
 |  | 
 | Support | 
 | ------- | 
 |  | 
 | Post question, comments or patches to the jgit-dev@eclipse.org mailing list. | 
 | You need to be subscribed to post, see here: | 
 |  | 
 | https://dev.eclipse.org/mailman/listinfo/jgit-dev | 
 |  | 
 |  | 
 | Contributing | 
 | ------------ | 
 |  | 
 | See the EGit Contributor Guide: | 
 |  | 
 | http://wiki.eclipse.org/EGit/Contributor_Guide | 
 |  | 
 |  | 
 | About Git | 
 | --------- | 
 |  | 
 | More information about Git, its repository format, and the canonical | 
 | C based implementation can be obtained from the Git website: | 
 |  | 
 | http://git-scm.com/ |