[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] Upstream synchronization documentation

From: Rasmus
Subject: [O] Upstream synchronization documentation
Date: Mon, 03 Jul 2017 12:35:32 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)


The documentation in README_maintainer is a bit outdated
wrt. synchronizing with upstream Emacs.

I have updated the to best of my knowledge in the attached patch.  I would
be happy to push it, if there are no objections.

It would also be great if someone would let me know about the mistakes
that are undoubtedly in the draft.


I hear there's rumors on the, uh, Internets. . .
>From 2126076308e13efbacf115afc3856d2c1da541fa Mon Sep 17 00:00:00 2001
From: Rasmus <address@hidden>
Date: Mon, 3 Jul 2017 11:48:58 +0200
Subject: [PATCH] Update README_maintainer with upstream synchronization

* README_maintainer: Update with upstream synchronization instructions.
 README_maintainer | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 57 insertions(+), 4 deletions(-)

diff --git a/README_maintainer b/README_maintainer
index 6b162aa52..bf2678da3 100644
--- a/README_maintainer
+++ b/README_maintainer
@@ -88,9 +88,62 @@ Org and contributed libraries.
 org-latest* snapshots are built from the *master* branch.
-* Synchronization with Emacs
-** Updating etc/ORG-NEWS
+* Synchronization Org and upstream Emacs
+Org should be kept in sync with the upstream 
[[http://git.savannah.gnu.org/cgit/emacs.git/tree/][Emacs repository]].
+Sometimes Org is changed in the Emacs upstream repo.  These changes
+should be backported.  Likewise, new stable releases of Org should be
+added to Emacs.
+** Backporting changes from upstream Emacs
+To check for backports from the Emacs upstream repository, one can use
+the following =git= command, cutesy of 
[[http://permalink.gmane.org/gmane.emacs.devel/215861][Kyle Meyer]],
+: git log $rev..origin/emacs-25 -- lisp/org doc/misc/org.texi 
+where =$rev= is the last commit from the =emacs-25= branch that was
+backported.  The same should be done for the =master= branch.
+One may also use this 
[[http://git.savannah.gnu.org/cgit/emacs.git/atom/lisp/org/][Atom feed]] to see 
upstream changes.
+** Updating the Org version in upstream Emacs
+After a new release of Org, it should be synced to the Emacs
+Typically, Org can be synchronized by copying over files from the
+=emacs-sync= branch of the Org repository to the =master= branch of Emacs
+repository.  The =emacs-sync= branch has a few extra changes compared to
+the =maint= branch.  If the Emacs maintainers are planning a new release
+of Emacs soon, it is possible that another branch, e.g. =emacs-25=,
+should be used.
+If you are synchronizing a major release of Org, it may be useful to
+use a separate branch before merging, e.g. =scratch/org-mode-merge=.
+This can then later be merged with the =master= branch, when everything
+has been tested.
+Please also see 
[[http://git.savannah.gnu.org/cgit/emacs.git/tree/CONTRIBUTE][CONTRIBUTE]] in 
the Emacs repository.
+*** Where to files go
+The following detail where files in Org repository are copied to in
+the Emacs repository.
+*** =org-mode/doc=
+- =org.texi= :: Copy to =emacs/doc/misc=.  It may be necessary to replace,
+               address@hidden org-version.inc~ #+end_src with address@hidden 
VERSION 9.0.9~
+               or similar. 
+- =orgcard.tex= :: Copy to =emacs/doc/refcards=.  Make sure that
+                  ~\def\orgversionnumber~ and ~\def\versionyear~ are up
+                  to date, if necessary.
+- =library-of-babel.org= :: Copy to =emacs/etc/org=.
+***  =org-mode/etc=
+- =styles/*= :: Copy to =emacs/etc/org=.
+- =schema/*.rnc= :: Copy to =emacs/etc/schema=.
+- =schema/schemas.xml= :: New entries of this files should be added to
+     =emacs/etc/schema/schemas.xml=.
+- =ORG-NEWS= :: Copy to =emacs/etc=
+*** =org-mode/lisp=
+- Copy =*.el= files to  =emacs/lisp/org=, except =org-loaddefs.el=!
+- You should create =org-version.el= in =emacs/lisp/org=.  The file is
+  created when you =make= Org.
+*** TODO =org-mode/testing=
+** Outdated notes
+*** Updating etc/ORG-NEWS
 Latest changes in Emacs are described in Emacs =etc/NEWS=, and latest
 changes in major Emacs packages are described in =etc/ORG-NEWS=. 
@@ -100,7 +153,7 @@ always should), you need to update Org's =etc/ORG-NEWS= 
file so that
 you can merge it with that of Emacs.  There is one top-level section
 for each release that is merged with Emacs.
-** Merging with Emacs trunk branch
+*** Merging with Emacs trunk branch
 This is still a significant headache.  Some hand work is needed here.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]