restic

module
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2016 License: BSD-2-Clause

README

Documentation Build Status Build status Report Card Coverage Status

Introduction

restic is a backup program that is fast, efficient and secure. Detailed information can be found in the documentation and the user manual. The design document lists the technical background and gives detailed information about the structure of the repository and the data saved therein.

The latest documentation can be viewed online at https://restic.readthedocs.io/en/latest. On the bottom left corner there is a menu that allows switching to the documentation and user manual for the latest released version.

Build restic

Install Go/Golang (at least version 1.3), then run go run build.go, afterwards you'll find the binary in the current directory:

$ go run build.go

$ ./restic --help
Usage:
  restic [OPTIONS] <command>
[...]

More documentation can be found in the user manual.

At the moment, the only tested compiler for restic is the official Go compiler. Building restic with gccgo may work, but is not supported.

Contribute and Documentation

Contributions are welcome! More information can be found in CONTRIBUTING.md. A document describing the design of restic and the data structures stored on the back end is contained in doc/Design.md. The development environment is described in CONTRIBUTING.md.

If you'd like to start contributing to restic, but don't know exactly what do to, have a look at this great article by Dave Cheney: Suggestions for contributing to an Open Source project A few issues have been tagged with the label help wanted, you can start looking at those: https://github.com/restic/restic/labels/help%20wanted

Contact

If you discover a bug, find something surprising or if you would like to discuss or ask something, please open a github issue. If you would like to chat about restic, there is also the IRC channel #restic on irc.freenode.net.

Important: If you discover something that you believe to be a possible critical security problem, please do not open a GitHub issue but send an email directly to alexander@bumpern.de. If possible, please encrypt your email using the following PGP key (0x91A6868BD3F7A907):

pub   4096R/91A6868BD3F7A907 2014-11-01
      Key fingerprint = CF8F 18F2 8445 7597 3F79  D4E1 91A6 868B D3F7 A907
      uid                          Alexander Neumann <alexander@bumpern.de>
      uid                          Alexander Neumann <alexander@debian.org>
      sub   4096R/D5FC2ACF4043FDF1 2014-11-01

License

Restic is licensed under "BSD 2-Clause License". You can find the complete text in the file LICENSE.

Directories

Path Synopsis
src
cmds/restic
This package contains the code for the restic executable.
This package contains the code for the restic executable.
restic
Package restic is the top level package for the restic backup program, please see https://github.com/restic/restic for more information.
Package restic is the top level package for the restic backup program, please see https://github.com/restic/restic for more information.
restic/backend
Package backend provides local and remote storage for restic repositories.
Package backend provides local and remote storage for restic repositories.
restic/backend/local
Package local implements repository storage in a local directory.
Package local implements repository storage in a local directory.
restic/backend/sftp
Package sftp implements repository storage in a directory on a remote server via the sftp protocol.
Package sftp implements repository storage in a directory on a remote server via the sftp protocol.
restic/crypto
Package crypto provides all cryptographic operations needed in restic.
Package crypto provides all cryptographic operations needed in restic.
restic/debug
Package debug provides an infrastructure for logging debug information and breakpoints.
Package debug provides an infrastructure for logging debug information and breakpoints.
restic/filter
Package filter implements filters for files similar to filepath.Glob, but in contrast to filepath.Glob a pattern may specify directories.
Package filter implements filters for files similar to filepath.Glob, but in contrast to filepath.Glob a pattern may specify directories.
restic/fs
Package fs implements an OS independend abstraction of a file system suitable for backup purposes.
Package fs implements an OS independend abstraction of a file system suitable for backup purposes.
restic/location
Package location implements parsing the restic repository location from a string.
Package location implements parsing the restic repository location from a string.
restic/pack
Package pack provides functions for combining and parsing pack files.
Package pack provides functions for combining and parsing pack files.
restic/pipe
Package pipe implements walking a directory in a deterministic order.
Package pipe implements walking a directory in a deterministic order.
restic/repository
Package repository implements a restic repository on top of a backend.
Package repository implements a restic repository on top of a backend.
restic/test
Package test_helper provides helper functions for writing tests for restic.
Package test_helper provides helper functions for writing tests for restic.
restic/worker
Package worker implements a worker pool.
Package worker implements a worker pool.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL