> For the complete documentation index, see [llms.txt](https://jadelab.gitbook.io/jadegit/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jadelab.gitbook.io/jadegit/0.11.1/welcome.md).

# Welcome

JadeGit is an [open-source](https://gitlab.com/jadelab/jadegit) extension to [JADE](https://www.jadeworld.com/jade-platform) which provides source control & deployment capabilities.  Interacting with Git repositories is achieved using [libgit2](https://libgit2.org/), which also provides the ability to use custom ODB backends, allowing use of the JADE database for storing changes persistently.

Source control is implemented using the existing patch control hooks provided by JADE to track changes. Once ready, changes can be staged & committed, at which point changes are extracted from the database into a file based format.&#x20;

Files are converted back into schema files to be loaded into a JADE environment by building a deployment using the command line executable.  More complicated update deployments are built by comparing previous & latest versions of the source files, which supports operations like renames & class moves.

{% hint style="info" %}
While jadegit does already provide good coverage of basic JADE schema entities, the core functionality is still being developed.  If you identify a fault or missing piece of functionality, please [raise an issue](https://gitlab.com/jadelab/jadegit/-/issues/new).
{% endhint %}

The best way of discovering what jadegit already supports is to try it out using the following guide.
