README.md (1278B)
1 # backup 2 3 Backup helper for git, tarsnap, plakar and rclone. One command commits, 4 archives or syncs a named set of directories. 5 6 Needs `janet` plus whichever backends you use. 7 8 ## Config 9 10 Targets live in `~/.config/backup/config.janet`. One Janet table. Paths may use `~/` and `$VAR`. 11 See `config.example.janet`. 12 13 Omit rclone `:targets` to reuse the plakar sources. Set `{}` to 14 disable rclone. Plakar stores and sources stay in plakar's own files. 15 16 ## Usage 17 18 ```sh 19 backup -l # list targets 20 backup git:notes # commit, no push 21 backup -p git:notes # commit, pull, push 22 backup tarsnap:notes # timestamped archive 23 backup plakar:hoo # back up every source to hoo 24 backup 'plakar:hoo:src,notes' # back up two sources 25 backup rclone:notes # copy to backup:notes 26 backup git -e notes # all git targets except notes 27 ``` 28 29 One target per run. No target lists and exits. 30 31 ## Options 32 33 - `-p`, `--push`: commit, pull, push git targets 34 - `-f`, `--fetch`: pull git targets first 35 - `-q`, `--quiet`: hide child output 36 - `-l`, `--list`: list targets 37 - `-e`, `--exclude`: names to skip 38 - `-h`, `--help`: usage 39 40 Failing targets get reported. The rest still run. Exit code is 41 nonzero if anything failed.