]> code.delx.au - gnu-emacs-elpa/blob - packages/README
Fix up copyright names in ENWC; tweak packages/README.
[gnu-emacs-elpa] / packages / README
1 This directory contains most of the source code of the GNU ELPA packages.
2
3 Each directory in here corresponds to a package, which can be
4 either a single-file package or a multifile package.
5
6 A nightly cron job refreshes the GNU ELPA archive from this repository.
7
8 This cron job only creates a new package when the "version" (as specified in
9 the foo-pkg.el or in the "Version:" header) of a package is modified.
10 This means that you can safely work on the next version here without
11 worrying about the unstable code making it to GNU ELPA, and simply update
12 the "version" when you want to release the new code.
13
14 * External branches:
15
16 Some packages have an external upstream branch.
17 You should ideally be able to "bzr merge <URL>" from them, and it often
18 works, but it generally requires some hand-holding to set it up.
19 More specifically, the first "bzr merge" (ideally done when installing the
20 package into `elpa') needs to be a "bzr join" since there's no
21 common ancestor. Worse, "bzr join" doesn't work so well with bzr-git, so
22 you need to do a bit of gymnastics:
23
24 git clone <giturl> # Done because bzr-git works better locally
25 bzr branch <localgit> tmp
26 cd tmp
27 bzr mkdir .newroot
28 bzr mv * .newroot/
29 ... maybe other bzr mv .<blabla> .newroot/ ...
30 bzr split .newroot
31 mv .newroot .../elpa/packages/<package>
32 cd .../elpa/packages/
33 bzr join <package>
34