File: README.Devel

package info (click to toggle)
postgresql-common 113%2Bsqueeze1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 688 kB
  • ctags: 100
  • sloc: perl: 2,249; sh: 387; makefile: 11
file content (88 lines) | stat: -rw-r--r-- 3,337 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Development of the Debian PostgreSQL packages
=============================================

Package structure
-----------------
To keep the maintenance of the packages as easy as possible, as much
packaging logic as possible should be put into postgresql-common. The
server packages (postgresql-X.Y) should not contain any conffile but
a generic init script (which just calls hook functions shipped by
postgresql-common). Likewise, their maintainer scripts should only
call the hooks offered by postgresql-common.

This structure makes it easy to fix packaging bugs for all available
major versions by only uploading a new version of the small
postgresql-common package. It also keeps the effort of packaging a new
major version as small as possible.

Revision control system
-----------------------
Package development happens with the distributed revision
control system "bazaar" (http://bazaar-vcs.org). This allows anybody
to create and develop a personal branch of the official package
without having write access to the trunk.

If you want to help with developing the packages, you should work with
bazaar to benefit from the features of a revision control system; this
will also allow the Debian maintainers to easily merge your changes
into the official packages.

The official Debian packages are built from Martin Pitt's branches
which are available at

  https://code.launchpad.net/postgresql

This contains the following branches:

  common     (postgresql-common package)
  debian-8.1 (all available major versions)
  debian-8.2
  debian-8.3

The orig.tar.gz files are not kept under revision control since they
would only bloat the archive. They need to be downloaded separately
from any Debian mirror.

Creating your personal branch
-----------------------------
First, please make sure that bzr can figure out a correct email
address with

 $ bzr whoami

If it is not correct, please set the $EMAIL environment variable.

If you want to help with the package development or just want to
develop a feature you need, you should create your own branch where
you can commit to. As an example, let's create a branch of the
postgresql-common package:

  $ bzr branch http://bazaar.launchpad.net/~pitti/postgresql/common

Now you can happily use "bzr diff", "bzr commit", "bzr add", "baz
pull", "bzr merge", and all the other features of revision control.

Publishing your branch
----------------------

The prefered method of publishing your branch is to create a Launchpad
account and put your branch there as well, so that all branches are
managed in one place, and can be browsed, subscribed to, etc.

  bzr push bzr+ssh://<username>@bazaar.launchpad.net/~<username>/postgresql/<branchname>

Of course you can also use any other server where you have ssh or sftp
access (use sftp:// for the latter) and which is http accessible:

  bzr push sftp://myuser@my.server.com:public_html/bzr/psql/common

After this initial command, "bzr push" is enough for subsequent
pushes, bzr remembers the last push location. This way you can keep
your remote branch up to date.

If you developed a particular feature or bug fix and would like to see
it in the official package, please send a mail to
pkg-postgresql-public@lists.alioth.debian.org or to mpitt@debian.org,
and state the URL of your branch.

 -- Martin Pitt <mpitt@debian.org>