Update README
Change-Id: Ibf77553f89871e34d7617d2a648fb0dc7904325d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
parent
2902255526
commit
7611149339
198
README.md
198
README.md
|
@ -1,15 +1,16 @@
|
||||||
Java Git
|
# Java Git
|
||||||
========
|
|
||||||
|
|
||||||
An implementation of the Git version control system in pure Java.
|
An implementation of the Git version control system in pure Java.
|
||||||
|
|
||||||
This package is licensed under the EDL (Eclipse Distribution
|
This project is licensed under the __EDL__ (Eclipse Distribution
|
||||||
License).
|
License).
|
||||||
|
|
||||||
JGit can be imported straight into Eclipse, built and tested from
|
JGit can be imported straight into Eclipse and built and tested from
|
||||||
there, but the automated builds use Maven.
|
there. It can be built from the command line using
|
||||||
|
[Maven](https://maven.apache.org/) or [Bazel](https://bazel.build/).
|
||||||
|
The CI builds use Maven and run on [Jenkins](https://ci.eclipse.org/jgit/).
|
||||||
|
|
||||||
- org.eclipse.jgit
|
- __org.eclipse.jgit__
|
||||||
|
|
||||||
A pure Java library capable of being run standalone, with no
|
A pure Java library capable of being run standalone, with no
|
||||||
additional support libraries. It provides classes to read and
|
additional support libraries. It provides classes to read and
|
||||||
|
@ -18,63 +19,73 @@ there, but the automated builds use Maven.
|
||||||
All portions of JGit are covered by the EDL. Absolutely no GPL,
|
All portions of JGit are covered by the EDL. Absolutely no GPL,
|
||||||
LGPL or EPL contributions are accepted within this package.
|
LGPL or EPL contributions are accepted within this package.
|
||||||
|
|
||||||
- org.eclipse.jgit.ant
|
- __org.eclipse.jgit.ant__
|
||||||
|
|
||||||
Ant tasks based on JGit.
|
Ant tasks based on JGit.
|
||||||
|
|
||||||
- org.eclipse.jgit.archive
|
- __org.eclipse.jgit.archive__
|
||||||
|
|
||||||
Support for exporting to various archive formats (zip etc).
|
Support for exporting to various archive formats (zip etc).
|
||||||
|
|
||||||
- org.eclipse.jgit.http.apache
|
- __org.eclipse.jgit.http.apache__
|
||||||
|
|
||||||
Apache httpclient support
|
[Apache httpclient](https://hc.apache.org/httpcomponents-client-ga/) support.
|
||||||
|
|
||||||
- org.eclipse.jgit.http.server
|
- __org.eclipse.jgit.http.server__
|
||||||
|
|
||||||
Server for the smart and dumb Git HTTP protocol.
|
Server for the smart and dumb
|
||||||
|
[Git HTTP protocol](https://github.com/git/git/blob/master/Documentation/technical/http-protocol.txt).
|
||||||
|
|
||||||
- org.eclipse.jgit.pgm
|
- __org.eclipse.jgit.lfs__
|
||||||
|
|
||||||
Command-line interface Git commands implemented using JGit
|
Support for [LFS](https://git-lfs.github.com/) (Large File Storage).
|
||||||
("pgm" stands for program).
|
|
||||||
|
|
||||||
- org.eclipse.jgit.packaging
|
- __org.eclipse.jgit.lfs.server__
|
||||||
|
|
||||||
|
Basic LFS server support.
|
||||||
|
|
||||||
|
- __org.eclipse.jgit.packaging__
|
||||||
|
|
||||||
Production of Eclipse features and p2 repository for JGit. See the JGit
|
Production of Eclipse features and p2 repository for JGit. See the JGit
|
||||||
Wiki on why and how to use this module.
|
Wiki on why and how to use this module.
|
||||||
|
|
||||||
Tests
|
- __org.eclipse.jgit.pgm__
|
||||||
-----
|
|
||||||
|
|
||||||
- org.eclipse.jgit.junit
|
Command-line interface Git commands implemented using JGit
|
||||||
|
("pgm" stands for program).
|
||||||
|
|
||||||
Helpers for unit testing
|
- __org.eclipse.jgit.ssh.apache__
|
||||||
|
|
||||||
- org.eclipse.jgit.test
|
Client support for the ssh protocol based on
|
||||||
|
[Apache Mina sshd](https://mina.apache.org/sshd-project/).
|
||||||
|
|
||||||
Unit tests for org.eclipse.jgit
|
- __org.eclipse.jgit.ui__
|
||||||
|
|
||||||
- org.eclipse.jgit.ant.test
|
Simple UI for displaying git log.
|
||||||
- org.eclipse.jgit.pgm.test
|
|
||||||
- org.eclipse.jgit.http.test
|
|
||||||
- org.eclipse.jgit.junit.test
|
|
||||||
|
|
||||||
No further description needed
|
## Tests
|
||||||
|
|
||||||
Warnings/Caveats
|
- __org.eclipse.jgit.junit__, __org.eclipse.jgit.junit.http__,
|
||||||
----------------
|
__org.eclipse.jgit.junit.ssh__: Helpers for unit testing
|
||||||
|
- __org.eclipse.jgit.ant.test__: Unit tests for org.eclipse.jgit.ant
|
||||||
|
- __org.eclipse.jgit.http.test__: Unit tests for org.eclipse.jgit.http.server
|
||||||
|
- __org.eclipse.jgit.lfs.server.test__: Unit tests for org.eclipse.jgit.lfs.server
|
||||||
|
- __org.eclipse.jgit.lfs.test__: Unit tests for org.eclipse.jgit.lfs
|
||||||
|
- __org.eclipse.jgit.pgm.test__: Unit tests for org.eclipse.jgit.pgm
|
||||||
|
- __org.eclipse.jgit.ssh.apache.test__: Unit tests for org.eclipse.jgit.ssh.apache
|
||||||
|
- __org.eclipse.jgit.test__: Unit tests for org.eclipse.jgit
|
||||||
|
|
||||||
- Native smbolic links are supported, provided the file system supports
|
## Warnings/Caveats
|
||||||
them. For Windows you must have Windows Vista/Windows 2008 or newer,
|
|
||||||
use a non-administrator account and have the SeCreateSymbolicLinkPrivilege.
|
- Native symbolic links are supported, provided the file system supports
|
||||||
|
them. For Windows you must use a non-administrator account and have the SeCreateSymbolicLinkPrivilege.
|
||||||
|
|
||||||
- Only the timestamp of the index is used by jgit if the index is
|
- Only the timestamp of the index is used by jgit if the index is
|
||||||
dirty.
|
dirty.
|
||||||
|
|
||||||
- JGit requires at least a Java 8 JDK.
|
- JGit requires at least a Java 8 JDK.
|
||||||
|
|
||||||
- CRLF conversion is performed depending on the core.autocrlf setting,
|
- CRLF conversion is performed depending on the `core.autocrlf` setting,
|
||||||
however Git for Windows by default stores that setting during
|
however Git for Windows by default stores that setting during
|
||||||
installation in the "system wide" configuration file. If Git is not
|
installation in the "system wide" configuration file. If Git is not
|
||||||
installed, use the global or repository configuration for the
|
installed, use the global or repository configuration for the
|
||||||
|
@ -88,102 +99,69 @@ Warnings/Caveats
|
||||||
is installed. Modifying PATH is the recommended option if C Git is
|
is installed. Modifying PATH is the recommended option if C Git is
|
||||||
installed.
|
installed.
|
||||||
|
|
||||||
- We try to use the same notation of $HOME as C Git does. On Windows
|
- 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.
|
this is often not the same value as the `user.home` system property.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
Package Features
|
- __org.eclipse.jgit__
|
||||||
----------------
|
- Read loose and packed commits, trees, blobs, including
|
||||||
|
|
||||||
- org.eclipse.jgit/
|
|
||||||
|
|
||||||
* Read loose and packed commits, trees, blobs, including
|
|
||||||
deltafied objects.
|
deltafied objects.
|
||||||
|
- Read objects from shared repositories
|
||||||
* Read objects from shared repositories
|
- Write loose commits, trees, blobs.
|
||||||
|
- Write blobs from local files or Java InputStreams.
|
||||||
* Write loose commits, trees, blobs.
|
- Read blobs as Java InputStreams.
|
||||||
|
- Copy trees to local directory, or local directory to a tree.
|
||||||
* Write blobs from local files or Java InputStreams.
|
- Lazily loads objects as necessary.
|
||||||
|
- Read and write .git/config files.
|
||||||
* Read blobs as Java InputStreams.
|
- Create a new repository.
|
||||||
|
- Read and write refs, including walking through symrefs.
|
||||||
* Copy trees to local directory, or local directory to a tree.
|
- Read, update and write the Git index.
|
||||||
|
- Checkout in dirty working directory if trivial.
|
||||||
* Lazily loads objects as necessary.
|
- Walk the history from a given set of commits looking for commits
|
||||||
|
|
||||||
* 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.
|
introducing changes in files under a specified path.
|
||||||
|
- Object transport
|
||||||
|
|
||||||
* Object transport
|
|
||||||
Fetch via ssh, git, http, Amazon S3 and bundles.
|
Fetch via ssh, git, http, Amazon S3 and bundles.
|
||||||
Push via ssh, git and Amazon S3. JGit does not yet deltify
|
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.
|
the pushed packs so they may be a lot larger than C Git packs.
|
||||||
|
|
||||||
* Garbage collection
|
- Garbage collection
|
||||||
|
- Merge
|
||||||
|
- Rebase
|
||||||
|
- And much more
|
||||||
|
|
||||||
* Merge
|
- __org.eclipse.jgit.pgm__
|
||||||
|
- Assorted set of command line utilities. Mostly for ad-hoc testing of jgit
|
||||||
* 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.
|
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
|
||||||
|
|
||||||
- org.eclipse.jgit.ant/
|
## Missing Features
|
||||||
|
|
||||||
* 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:
|
There are some missing features:
|
||||||
|
|
||||||
- gitattributes support
|
- verifying signed commits
|
||||||
|
- signing tags
|
||||||
|
- signing push
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
Support
|
Post questions, comments or discussions to the jgit-dev@eclipse.org mailing list.
|
||||||
-------
|
You need to be [subscribed](https://dev.eclipse.org/mailman/listinfo/jgit-dev)
|
||||||
|
to post. File bugs and enhancement requests in
|
||||||
|
[Bugzilla](https://wiki.eclipse.org/EGit/Contributor_Guide#Filing_Bugs).
|
||||||
|
|
||||||
Post question, comments or patches to the jgit-dev@eclipse.org mailing list.
|
## Contributing
|
||||||
You need to be subscribed to post, see here:
|
|
||||||
|
|
||||||
https://dev.eclipse.org/mailman/listinfo/jgit-dev
|
See the EGit Contributor Guide: http://wiki.eclipse.org/EGit/Contributor_Guide
|
||||||
|
|
||||||
|
## About Git
|
||||||
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
|
More information about Git, its repository format, and the canonical
|
||||||
C based implementation can be obtained from the Git website:
|
C based implementation can be obtained from the
|
||||||
|
[Git website](http://git-scm.com/).
|
||||||
http://git-scm.com/
|
|
||||||
|
|
Loading…
Reference in New Issue