The Docutils Subversion Repository

Author: Lea Wiemann
Contact: docutils-develop@lists.sourceforge.net
Revision: 7659
Date: 2013-05-06
Copyright: This document has been placed in the public domain.

Quick Instructions

To get a checkout of the Docutils source tree (without the sandboxes), type

svn checkout http://svn.code.sf.net/p/docutils/code/trunk docutils-code

If you are going to commit changes to the repository, please read the whole document, especially the section "Information for Developers"!

Important

As of 2013-03-13 the subversion urls have changed.

The Git clone at http://repo.or.cz/w/docutils.git is currently not updated and should not be used.

Docutils uses a Subversion repository located at docutils.svn.sourceforge.net. Subversion is exhaustively documented in the Subversion Book (svnbook).

While Unix and Mac OS X users will probably prefer the standard Subversion command line interface, Windows user may want to try TortoiseSVN, a convenient explorer extension. The instructions apply analogously.

For the project policy on repository use (check-in requirements, branching, etc.), please see the Docutils Project Policies.

Contents

Accessing the Repository

General Information

Web Access

The repository can be browsed and examined via the web at http://sourceforge.net/p/docutils/code

Repository Access Methods

To get a checkout of the Docutils repository, first determine the root of the repository depending on your preferred protocol:

anonymous access: (read only)
http://svn.code.sf.net/p/docutils/code
developer access: (read and write)
svn+ssh://<USERNAME>@svn.code.sf.net/p/docutils/code

Checking Out the Repository

To check out only the current main source tree of Docutils, type

svn checkout ROOT/trunk/docutils

(Substitute your preferred repository root for ROOT.) To check out everything (main tree, sandboxes, web site, and parallel projects), type

svn checkout ROOT/trunk docutils

This will create a working copy of the whole trunk in a new directory called docutils.

Note that you probably do not want to check out the ROOT itself (without "/trunk"), because then you'd end up fetching the whole Docutils tree for every branch and tag over and over again.

To update your working copy later on, cd into the working copy and type

svn update

Switching the Repository Root

If you changed your mind and want to use a different repository root, cd into your working copy and type:

svn switch --relocate OLDROOT NEWROOT

Information for Developers

If you would like to have write access to the repository, register with SourceForge.net and send your SourceForge.net user names to docutils-develop@lists.sourceforge.net. (Note that there may be a delay of several hours until you can commit changes to the repository.)

Sourceforge subversion access is documented here

Setting Up Your Subversion Client For Development

Before commiting changes to the repository, please ensure that the following lines are contained (and uncommented) in your local ~/.subversion/config file, so that new files are added with the correct properties set:

[miscellany]
# For your convenience:
global-ignores = ... *.pyc ...
# For correct properties:
enable-auto-props = yes

[auto-props]
*.py = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.txt = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.html = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.xml = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.tex = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.css = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.patch = svn:eol-style=native
*.sh = svn:eol-style=native;svn:executable;svn:keywords=Author Date Id Revision
*.png = svn:mime-type=image/png
*.jpg = svn:mime-type=image/jpeg
*.gif = svn:mime-type=image/gif

Repository Layout

The following tree shows the repository layout:

docutils/
|-- branches/
|   |-- branch1/
|   |   |-- docutils/
|   |   |-- sandbox/
|   |   `-- web/
|   `-- branch2/
|       |-- docutils/
|       |-- sandbox/
|       `-- web/
|-- tags/
|   |-- tag1/
|   |   |-- docutils/
|   |   |-- sandbox/
|   |   `-- web/
|   `-- tag2/
|       |-- docutils/
|       |-- sandbox/
|       `-- web/
`-- trunk/
    |-- docutils/
    |-- sandbox/
    `-- web/

The main source tree lives at docutils/trunk/docutils/, next to the sandboxes (docutils/trunk/sandbox/) and the web site files (docutils/trunk/web/).

docutils/branches/ and docutils/tags/ contain (shallow) copies of either the whole trunk or only the main source tree (docutils/trunk/docutils).