diff options
Diffstat (limited to 'doc/src/sgml/sourcerepo.sgml')
-rw-r--r-- | doc/src/sgml/sourcerepo.sgml | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/doc/src/sgml/sourcerepo.sgml b/doc/src/sgml/sourcerepo.sgml new file mode 100644 index 0000000..0ed7f8a --- /dev/null +++ b/doc/src/sgml/sourcerepo.sgml @@ -0,0 +1,94 @@ +<!-- 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> |