2.5 KB

Org-mode for developers

This page gather links to reference documentation and (forthcoming) tutorials on how to extend Org.

Git workflow

Org development uses a two-branches git workflow.

This branch contains the latest development for Org.
Temporary feature branches (either local or remote) should branch out from =master=. New features should be introduced into org on master. This branch is merged to the =maint= branch when a major release is made.
This branch is the "production" branch for Org. It
contains stable releases and bug fixes against them. Bugs present in a release should always be fixed on =maint=, which is then merged back into =master= so that the two branches keep the same bugfixes. Minor releases are made so that not too many bug fixes are pending on maint. The Org version on this branch is regularly sync'ed with the Emacs repository.

Git repositories

The git repository for Org is on


If you are a developer, you can clone it like this:

~$ git clone

To clone a read-only version of the repo:

~$ git clone

This repository is cloned on


You can display a graphic representation of the branches here:


Reference documentation

  • Syntax reference (draft)
  • Org Element API for the Org parser (org-element.el).
  • Reference documentation for the new export engine (ox.el) written
  • by Nicolas Goaziou.


  • Org Build System (aka Makefile)