Access the Parma Polyhedra Library Using rsync
In order to accelerate
dissemination, to provide a development environment that is as open as
possible and to facilitate mirroring, the PPL Git and the
old CVS repositories, as well as various other PPL-related data are also
available through anonymous rsync
access.
rsync
is a file transfer program for Unix systems. rsync
uses the
rsync algorithm that
provides a very fast method for bringing remote files into sync, that
is, to make the remote and local versions identical. The algorithm does
this by sending just the differences in the files across the link,
without requiring that both sets of files are present at one of the ends
of the link beforehand.
Using rsync
Here is how you get a copy of the Git repository: first, you must select a directory that will hold your copy of the repository. Assume that your choice is
/path/to/your/copy/
Please note: whatever is in the directory /path/to/your/copy/
will
be silently replaced by a verbatim copy of our repository. In other
words, if /path/to/your/copy/My_PhD_Thesis
is an existing file or
directory in your system then you must think twice before proceeding.
Still in other words, /path/to/your/copy/
must either be empty or
contain an old copy of the PPL repository that you would like to update.
Now you can issue the command
rsync --archive --delete --checksum --compress \\ rsync://rsync.cs.unipr.it/ppl-git /path/to/your/copy/
(The trailing `\’ above simply means that the command continues on
the following line.)
It is usually wise to write a small script containing the rsync command
so as to save typing and to reduce the chances of (costly) mistakes.
The same command can be run periodically to synchronize your copy of the
repository. Subsequent synchronisations will be much faster thanks to
the rsync algorithm. You may use the --stats
option of rsync
to get
an idea of how effective this is. Use --progress
if you want visual
feedback on what is happening.
See the Git instructions on how to use your local copy of the repository.
The whole FTP area of the Parma Polyhedra Library is also available with
rsync
. Just replace ppl-git
(an rsync target) with ppl-ftp
in
the command above. To get a list of available rsync targets, issue the
command
rsync rsync://rsync.cs.unipr.it/
As usual, we encourage you to try
rsync --help
or, if you really are in a state of grace,
man rsync
[]{#mirroring}
Mirroring
If you are in a part of the world that seems poorly served by our site,
we encourage you to set up local mirrors of the Git repository and FTP
site for you and others in your part of the world to use. Mirroring is
also useful for backup purposes and rsync
is the ideal tool for the
job.
If you decide to run a PPL mirror, let us know: we will list it on our mirrors page so that others may find it. Updating/checking your mirror twice a week should suffice. We also recommend that you run your mirroring script between 11 a.m. and 4 p.m. UTC/GMT, when network traffic in our country is at its lowest.