Fix typos
[org-mode/org-mode-NeilSmithlineMods.git] / README_maintainer
blob5d1a67a61243d655321f133406b15284706f82b8
2 # -*- mode:org -*-
4 #+title: Maintainer tasks
5 #+startup: indent
7 This document describes the tasks the Org-mode maintainer has to do
8 and how they are performed.
11 * Releases
13 ** Main releases
15 The release number for main releases look like this:  =7.13=
17 Main releases are made whenever Org is in a state where the feature
18 set is consistent and we feel that the features that are implemented
19 is something we want to support in the future.
21 A major release turns the current state of the master branch into a
22 release.  The release process is a single make command:
24 : make release TAG=7.13
26 ** Minor releases
28 The release number for minor releases look like this:  =7.13.01=
30 Minor releases are small amends to main releases.  Usually they fix
31 bugs discovered in a main release.  Only the fix to the bug is
32 bundled into a release, without the main development work going on in
33 the master branch.  Since the big fix will also be needed in the
34 master branch, usually the fix is made in master and then
35 cherry-picked into maint.  When this is done, a release is made from
36 maint with this command:
38 : make fixrelease TAG=7.13.01
40 * Synchonization with Emacs
42 This is still a significant headache.  Some hand work is needed here.
44 Emacs uses bzr, I cannot bring myself to switch from git to bzr for the
45 development version of Org-mode.  So the way I have been doing things
46 is this:
48 1. I watch the Emacs diffs for changes made by the maintainers of
49    Emacs in the org-mode files in Emacs.  Any changes that come up
50    there, I merge into the development version of Org-mode.
51    Occasionally I do not do this, if I do not agree with a change.
52    The changes go into Org /without/ a ChangeLog-like entry in the
53    commit message.  The reason for this is that we will later generate
54    a ChangeLog file from our commit messages, and I do not want double
55    Change entries in the Emacs ChangeLog file.
57 2. When I have made a release (usually I wait for the minor releases
58    to stabilize), I copy org files into the Emacs repository.  Yes, I
59    do not merge, I copy.  This has been the source of some problems in
60    the past - but I have not had the patience to work out a better
61    mechanism.
63    Careful: Copy org.texi and orgcard.tex into the right places, and
64    also copy the lisp files with *two exceptions*: Do *not* copy
65    /org-colview-xemacs.el/ and /org-install.el/.  The former does not
66    belong in Emacs.  And the latter would actually be harmful because
67    Emacs generates its own autoloads.  The Emacs distribution contains
68    an empty org-install.el, so that users can have =(require
69    'org-install)= in .emacs with no ill effects.  So if you were to
70    copy org-install.el, you would overwrite that empty placeholder
71    file.
73 3. Generate the ChangeLog entries
75    For this, I do in the org-mode git repository
77    : UTILITIES/make_emacs_changelog release_7.02.05..release_7.03.02
79    This will spit out the ChangeLog entries that need to go into the
80    ChangeLog file in the lisp/org directory in Emacs.