mirror of
https://github.com/postgres/postgres.git
synced 2025-05-28 05:21:27 +03:00
95 lines
3.0 KiB
Plaintext
95 lines
3.0 KiB
Plaintext
<!-- doc/src/sgml/sourcerepo.sgml -->
|
|
|
|
<appendix id="sourcerepo">
|
|
<title>The Source Code Repository</title>
|
|
|
|
<para>
|
|
The <productname>PostgreSQL</productname> source code is stored and managed
|
|
using the <productname>Git</productname> version control system. A public
|
|
mirror of the master repository is available; it is updated within a minute
|
|
of any change to the master repository.
|
|
</para>
|
|
|
|
<para>
|
|
Our wiki, <ulink
|
|
url="https://wiki.postgresql.org/wiki/Working_with_Git"></ulink>,
|
|
has some discussion on working with Git.
|
|
</para>
|
|
|
|
<para>
|
|
Note that building <productname>PostgreSQL</productname> from the source
|
|
repository requires reasonably up-to-date versions of <application>bison</application>,
|
|
<application>flex</application>, and <application>Perl</application>. These tools are not needed
|
|
to build from a distribution tarball, because the files that these tools
|
|
are used to build are included in the tarball. Other tool requirements
|
|
are the same as shown in <xref linkend="install-requirements"/>.
|
|
</para>
|
|
|
|
<sect1 id="git">
|
|
<title>Getting the Source via <productname>Git</productname></title>
|
|
|
|
<para>
|
|
With <productname>Git</productname> you will make a copy of the entire code repository
|
|
on your local machine, so you will have access to all history and branches
|
|
offline. This is the fastest and most flexible way to develop or test
|
|
patches.
|
|
</para>
|
|
|
|
<procedure>
|
|
<title>Git</title>
|
|
|
|
<step>
|
|
<para>
|
|
You will need an installed version of <productname>Git</productname>, which you can
|
|
get from <ulink url="https://git-scm.com"></ulink>. Many systems already
|
|
have a recent version of <application>Git</application> installed by default, or
|
|
available in their package distribution system.
|
|
</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>
|
|
To begin using the Git repository, make a clone of the official mirror:
|
|
|
|
<programlisting>
|
|
git clone https://git.postgresql.org/git/postgresql.git
|
|
</programlisting>
|
|
|
|
This will copy the full repository to your local machine, so it may take
|
|
a while to complete, especially if you have a slow Internet connection.
|
|
The files will be placed in a new subdirectory <filename>postgresql</filename> of
|
|
your current directory.
|
|
</para>
|
|
|
|
<para>
|
|
The Git mirror can also be reached via the Git protocol. Just change the URL
|
|
prefix to <literal>git</literal>, as in:
|
|
|
|
<programlisting>
|
|
git clone git://git.postgresql.org/git/postgresql.git
|
|
</programlisting>
|
|
|
|
</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>
|
|
Whenever you want to get the latest updates in the system, <command>cd</command>
|
|
into the repository, and run:
|
|
|
|
<programlisting>
|
|
git fetch
|
|
</programlisting>
|
|
</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<para>
|
|
<productname>Git</productname> can do a lot more things than just fetch the source. For
|
|
more information, consult the <productname>Git</productname> man pages, or see the
|
|
website at <ulink url="https://git-scm.com"></ulink>.
|
|
</para>
|
|
</sect1>
|
|
|
|
</appendix>
|