Projects / drsync

drsync

drsync is a Perl wrapper for rsync which keeps track of the filelist between synchronizations. If you delete a file in one place, it will delete it in the other place; if you add a file, it copies to the other place. It is ideal for notebook users who want to keep data in two (or more) different places. It is also good for the Linux PDAs (Agenda, iPAQ, Yopi, etc.), to keep data synchronized with the desktop. The requirements are designed to be minimum.

Tags Communications
Licenses GPL Artistic
Operating Systems POSIX Linux
Implementation Perl

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  07 Jul 2002 07:41
  • Rrelease-after

Changes: This program was into a Perl module, making it possible to use its features from any Perl script. Some code cleanup was also done.

  • Rrelease-mid
  •  25 Feb 2002 18:45
  • Rrelease-after

No changes have been submitted for this release.

  • Rrelease-mid
  •  16 Feb 2002 22:23
  • Rrelease-after

Changes: Support for rsync 2.5.2, --backup and --suffix commandline options, and documentation tweaks.

  • Rrelease-mid
  •  06 Feb 2001 13:56
  • Rrelease-after

Changes: Verbose operation fixes, support for the --progress option of rsync, and rsync error handling.

  • Rrelease-mid
  •  30 Jan 2001 06:12
  • Rrelease-after

    Changes: Perl 5.005 support, ability to create directories if necessary, --verbose behaviour changes, and new "Command-line Switches", "How it works", and short-term and long-term TODO-s in the manual.

    Rss Recent comments

    Rcomment-before 07 Feb 2001 08:27 Rcomment-trans dlux Rcomment-after

    Re: Is it necessary?

    > What would be interresting would be
    > something like a mix of this and CVS
    > merge - that is, that if a file is
    > changed on both sides, and is a
    > text-file, it would merge the changes
    > nicely... Ok, that probably creates a
    > need to keep the original file, too...

    This is out of the scope of this project :-(
    It requires more than an rsync wrapper.

    The perfect solution would be a SyncML client-server implementation.

    Rcomment-before 06 Feb 2001 13:27 Rcomment-trans redhog Rcomment-after

    Re: Is it necessary?
    What would be interresting would be something like a mix of this and CVS merge - that is, that if a file is changed on both sides, and is a text-file, it would merge the changes nicely... Ok, that probably creates a need to keep the original file, too...

    Rcomment-before 06 Feb 2001 09:08 Rcomment-trans dlux Rcomment-after

    Re: Is it necessary?

    > Hmm... Interesting idea, but (IMHO) it
    > can be done with rsync itself:
    >
    > $ rsync -a --delete /src/path
    > rsync://dst.host.com/path/
    >
    > The option `--delete' does exactly
    > what is necessary to make destionation
    > look like source, i.e. all files that
    > does not exist on source side will be
    > deleted on destination side.
    >
    > So - what for we need the wrapper?
    > :)
    >

    It is used for 2 or more-way syncing. Imagine you add and remove files in both sides of the archive. You must keep track the filelist if you want to make difference between the 2 thing: someone added a new file in side A or someone delete a file in side B. In the first case you need to copy the file from A to B, in the second case, you must remove the file from A.

    Rcomment-before 03 Jan 2001 23:54 Rcomment-trans aldem Rcomment-after

    Is it necessary?
    Hmm... Interesting idea, but (IMHO) it can be done with rsync itself:

    $ rsync -a --delete /src/path rsync://dst.host.com/path/

    The option `--delete' does exactly what is necessary to make destionation look like source, i.e. all files that does not exist on source side will be deleted on destination side.

    So - what for we need the wrapper? :)

    C6e7b56eb2deaf12427efbbf37ac09ab_thumb

    Project Spotlight

    XDCC Parser

    An XDCC list parser.

    No-screenshot

    Project Spotlight

    pimPAQ

    A Perl/Gtk/DBI framework to develop PIM applications for the Compaq iPAQ.