xdbm

Crates.ioxdbm
lib.rsxdbm
version0.2.1
sourcesrc
created_at2024-03-18 00:23:08.547831
updated_at2024-06-19 09:35:35.23555
descriptionCross device backup manager, which manages backups on several storages mounted on multiple devices.
homepagehttps://github.com/qwjyh/xdbm
repositoryhttps://github.com/qwjyh/xdbm
max_upload_size
id1176918
size149,049
qwjyh (qwjyh)

documentation

README

xdbm

Cross device backup manager, which manages backups on several storages mounted on multiple devices with a single repository.

Usage

  1. xdbm init to setup new device(i.e. PC).
  2. xdbm storage add to add storages, or xdbm storage bind to make existing storages available on new device.
  3. xdbm backup add to add new backup configuration.
  4. xdbm backup done to tell xdbm to write backup execution datetime.
  5. xdbm storage list and xdbm backup list to see their status.

Hints

  • xdbm path to see the path of repository. Use git to sync it among the devices.
  • xdbm completion <SHELL> to generate completion scripts for shells.
  • Give --help to see helps on the commands.

TODO:

  • split subcommands to functions
  • write test for init subcommand
    • write test with existing repo
    • with ssh credential
      • ssh-agent
      • specify key
  • write test for storage subcommand
    • storage add online
    • storage add directory
    • storage list
  • update storage bind command
  • add storage remove command
  • add sync subcommand
  • add check subcommand
    • check that all parents exist
  • reorganize cmd option for storage
    • use subcommand
  • backup subcommands
    • backup add
      • test for backup add
    • backup list
      • status printing
    • backup done
  • fancy display
  • json output
  • no commit option
Commit count: 91

cargo fmt