From 17fac7f2c92df794b88648a95bea6796621dbe83 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Sun, 7 Sep 2003 23:11:37 +0000 Subject: Many fixes, primarily documentation git-svn-id: file:///home/lennart/svn/public/syrep/trunk@32 07ea20a6-d2c5-0310-9e02-9ef735347d72 --- man/Makefile.am | 43 +++++++ man/man.css | 30 +++++ man/man.xsl | 120 ++++++++++++++++++++ man/syrep.1.xml.in | 323 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 516 insertions(+) create mode 100644 man/Makefile.am create mode 100644 man/man.css create mode 100644 man/man.xsl create mode 100644 man/syrep.1.xml.in (limited to 'man') diff --git a/man/Makefile.am b/man/Makefile.am new file mode 100644 index 0000000..ed081db --- /dev/null +++ b/man/Makefile.am @@ -0,0 +1,43 @@ +# $Id$ + +# This file is part of syrep. +# +# syrep is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# syrep is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with syrep; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + +man_MANS = syrep.1 + +noinst_DATA = syrep.1.xml + +EXTRA_DIST = $(man_MANS) syrep.1.xml.in man.css man.xsl + +CLEANFILES = syrep.1.xml + +syrep.1.xml: syrep.1.xml.in Makefile + sed -e 's,@sysconfdir\@,$(sysconfdir),g' -e 's,@sbindir\@,$(sbindir),g' -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' -e 's,@PACKAGE_BUGREPORT\@,$(PACKAGE_BUGREPORT),g' $< > $@ + +xmllint: syrep.1.xml + xmllint $< > /dev/null + +.PHONY: xmllint + +if USE_XMLTOMAN + +XMLTOMAN = ~/xmltoman.d/xmltoman +CLEANFILES += $(man_MANS) + +syrep.1: syrep.1.xml Makefile + $(XMLTOMAN) $< > $@ + +endif diff --git a/man/man.css b/man/man.css new file mode 100644 index 0000000..37dd55f --- /dev/null +++ b/man/man.css @@ -0,0 +1,30 @@ +/* $Id$ */ + +/*** + This file is part of syrep. + + syrep is free software; you can redistribute it and/or modify it under + the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + syrep is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with syrep; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +***/ + +body { color: black; background-color: white; margin: 0.5cm; } +a:link, a:visited { color: #900000; } +h1 { text-transform:uppercase; font-size: 18pt; color: #00009F; } +p { margin-left:1cm; margin-right:1cm; } +.cmd { font-family:monospace; } +.file { font-family:monospace; } +.arg { text-transform:uppercase; font-family:monospace; font-style: italic; } +.opt { font-family:monospace; font-weight: bold; } +.manref { font-family:monospace; } +.option .optdesc { margin-left:2cm; } diff --git a/man/man.xsl b/man/man.xsl new file mode 100644 index 0000000..7946a76 --- /dev/null +++ b/man/man.xsl @@ -0,0 +1,120 @@ + + + + + + + + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + + + + + + <xsl:value-of select="@name"/>(<xsl:value-of select="@section"/>) + + + + +

Name

+

+ + - + +

+ + + +
+ + +

+ +

+
+ + +

+ +

+
+ + + + + + + + + + + + + + +
+ +
+
+ + +

Synopsis

+ +
+ + +

Synopsis

+ +
+ + +

Description

+ +
+ + +

Options

+ +
+ + +

+ +
+ + +
+
+ + + + + () + + + () + + + + + + + + +
diff --git a/man/syrep.1.xml.in b/man/syrep.1.xml.in new file mode 100644 index 0000000..2b6e502 --- /dev/null +++ b/man/syrep.1.xml.in @@ -0,0 +1,323 @@ + + + + + + + + + + + + syrep [options...] --list SNAPSHOT ... + syrep [options...] --info SNAPSHOT ... + syrep [options...] --history SNAPSHOT ... + syrep [options...] --dump SNAPSHOT ... + syrep [options...] --update DIRECTORY ... + syrep [options...] --diff SNAPSHOT SNAPSHOT + syrep [options...] --merge SNAPSHOT DIRECTORY + syrep [options...] --makepatch DIRECTORY SNAPSHOT + syrep [options...] --extract SNAPSHOT ... + syrep [options...] --cleanup SNAPSHOT ... + + + + +

Syrep is a generic file repository synchronization tool. It may + be used to synchronize large file hierarchies bidirectionally by + exchanging patch files. Syrep is truely peer-to-peer, no central + servers are involved. Synchronizations between more than two + repositories are supported. The patch files may be transferred via + offline media, e.g. removable hard disks or compact discs.

+ +

Files are tracked by their message digests, currently MD5.

+ +

Syrep was written to facilitate the synchronization of two + large digital music repositories without direct network + connection. Patch files of several gigabytes are common in + this situation.

+ +

Syrep is able to cope with 64 bit file sizes. (LFS)

+ +

Syrep is optimized for speed. It may make use of a message digest cache to accelerate the calculation of digests of a whole directory hierarchy.

+ +
+ +
+ +

Exactly one command has to be specified on the command line. On the other hand multiple options are allowed.

+ + + + + + + + + + + +
+ +
+ + + + +
+ +
+ + + + + + + + + +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ + + + + + + +
+
+ +
+ +
+ + + + +
+ +
+ + + +
+ +
+ + +
+ +
+ + + +
+ +
+ +

A syrep file repository is a POSIX file hierarchy with some + additional log data, which is used to track changes. Normally this + log data is saved as "snapshot" in the file + $(REPOSITORY)/.syrep/current.syrep. You may create + and update it by running --update. The more often this + log is updated the better modifications may be tracked. Therefore + this operation should be called at least once a day via

+ +

Two snapshots of two distinct repositories (possibly from + different hosts) may be compared with ---diff. This + will show you which files should be copied or deleted from or to + the other repository. --makepatch will attach the data + of the local missing in the remote repository to a snapshot and + write it to a patch file. This file should be transferred to the + other repository and applied there with --merge.

+ +

Keep in mind that patches contain the snapshot data of the + originating host. Because of that you may use it as a snapshot, + e.g. by running --diff on it. On the other hand you are + also able to merge snapshots without attached patch data to a + repository. This will do all required deletions and renames, but + naturally won't add any new data to the file tree.

+ +

To extract the contents of a patch you may use + --extract. This will write all files contained in the + patch or snapshot to the local directory, including snapshot log + data. Files are named by their message digests.

+ +
+ +
+ +

$(REPOSITORY)/.syrep/current.syrep is the current + snapshot of the repository. It is created and updated by running + --update on the directory. Use this file to create + patches on other repositories against this one. This file may be compressed by specifiying --compress when running --update.

+ +

$(REPOSITORY)/.syrep/md-cache is the message digest + cache which may be used to accelerate the repeated operation of + ---update. It associates device numbers, inode numbers, + file sizes and modification times with the message digest + calculated for that file. The file is only valid on the host it was + created on since it contains device numbers.

+ +

$(REPOSITORY)/.syrep/trash/ is the trash directory + used by --merge. Files are moved in here on + deletion. After successful completion it is emptied unless + --keep-trash is specified.

+ +

$(REPOSITORY)/.syrep/tmp/ is used as temporary file + space for extracting snaphots when option --local-temp + is used.

+
+ +
+

0 Success

+

Nonzero Failure

+
+ +
+

Syrep was written by Lennart Poettering <@PACKAGE_BUGREPORT@>.

+ +

Syrep is available at

+ +

You are encouraged to improve this documentation, feel free to send me patches. This is free software, after all.

+
+ +
+

,

+
+ +
+

This man page was written using by Oliver Kurth.

+
+ +
-- cgit