Merge branch 'stable-4.0'
[egit/eclipse.git] / README.md
blobbc5a09a8374f566fa461f6a0f0ede854e9181b7d
1 Eclipse Git Plugin
2 ==================
4 EGit is an Eclipse plugin for working with Git repositories. It is based
5 on the JGit library, which is a Git implementation in pure Java.
7 This package is licensed under the EPL. Please refer to the LICENSE file
8 for the complete license.
10 This package is composed of the following major components:
12 - org.eclipse.egit.core
14     An Eclipse plugin providing an interface to org.eclipse.jgit
15     and support routines to allow processing against the Eclipse
16     workspace and resource APIs, rather than the standard Java
17     file APIs. It also supplies the team provider implementation.
19 - org.eclipse.egit.ui
21     An Eclipse plugin providing the user interface on top of
22     org.eclipse.egit.core.
24 - org.eclipse.egit.core.test
26     Unit tests for org.eclipse.egit.core.
28 - org.eclipse.egit.ui.test
30     UI tests for org.eclipse.egit.ui.
32 - org.eclipse.egit
34     A plugin for packaging
36 - org.eclipse.egit-feature
38     Also packaging. This project is for building an Eclipse "feature"
39     out of the plugins above.
41 - org.eclipse.egit.repository
43     This package is for producing a p2 repository, i.e. a web site
44     you can point your eclipse at and just upgrade.
46 There are other components which provide integration with other plugins.
48 Warnings/Caveats
49 ----------------
51 - Symbolic links are supported on Java 7 and higher and require that the
52   optional JGit Java 7 feature is installed. For remaining issues
53   with symbolic link support see
54   https://bugs.eclipse.org/bugs/show_bug.cgi?id=429304.
56 - CRLF conversion works for some things, but is in general still being
57   worked on.
59 Compatibility
60 -------------
62 - In general, EGit supports at least the latest two Eclipse releases.
63   For details, please see https://wiki.eclipse.org/EGit/FAQ
65 - Newer version of EGit may implement new functionality, remove
66   existing functions and change others without other notice than what
67   is written in the commit log and source files themselves.
70 Package Features
71 ----------------
73 The following list is not complete, but it gives an overview of the
74 features:
76 - org.eclipse.egit.core
78     * Supplies an Eclipse team provider.
80     * Connect/disconnect the provider to a project.
82     * Search for the repositories associated with a project by
83       autodetecting the Git repository directories.
85     * Store which repositories are tied to which containers in the
86       Eclipse workspace.
88     * Tracks moves/renames/deletes and reflects them in the cache
89       tree.
91     * Resolves through linked containers.
93 - org.eclipse.egit.ui
95     * Connect team provider wizard panels.
97     * Connect to Git team provider by making a new repository.
99     * Connect to Git team provider by searching local filesystem
100       for existing repository directories.
102     * Team actions: track (add), untrack (remove), disconnect, show
103       history, compare version.
105     * Resource decorator shows file/directory state in the package
106       explorer and other views.
108     * Creating new commits or amending commits.
110     * View for staging changes (whole files and partial staging),
111       showing their differences and committing them.
113     * Graphical history viewer with the ability to compare versions
114       using eclipse built-in compare editor.
116     * Clone, push, pull, fetch
118     * Merge, rebase, cherry-pick
121 Missing Features
122 ----------------
124 - gitattributes support
126   In particular CRLF conversion is not yet fully implemented.
129 Support
130 -------
132 Post question or comments to the egit-dev@eclipse.org mailing list.
133 You need to be subscribed to post, see here:
135 https://dev.eclipse.org/mailman/listinfo/egit-dev
138 Contributing
139 ------------
141 See the EGit Contributor Guide:
143 http://wiki.eclipse.org/EGit/Contributor_Guide
146 About Git
147 ---------
149 More information about Git, its repository format, and the canonical
150 C based implementation can be obtained from the Git websites:
152 http://git-scm.com/