mirror of
				https://github.com/restic/restic.git
				synced 2025-11-04 04:16:58 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
// Package repository implements a restic repository on top of a backend. In
 | 
						|
// the following the abstractions used for this package are listed. More
 | 
						|
// information can be found in the restic design document.
 | 
						|
//
 | 
						|
// File
 | 
						|
//
 | 
						|
// A file is a named handle for some data saved in the backend. For the local
 | 
						|
// backend, this corresponds to actual files saved to disk. Usually, the SHA256
 | 
						|
// hash of the content is used for a file's name (hexadecimal, in lower-case
 | 
						|
// ASCII characters). An exception is the file `config`. Most files are
 | 
						|
// encrypted before being saved in a backend. This means that the name is the
 | 
						|
// hash of the ciphertext.
 | 
						|
//
 | 
						|
// Blob
 | 
						|
//
 | 
						|
// A blob is a number of bytes that has a type (data or tree). Blobs are
 | 
						|
// identified by an ID, which is the SHA256 hash of the blobs' contents. One or
 | 
						|
// more blobs are bundled together in a Pack and then saved to the backend.
 | 
						|
// Blobs are always encrypted before being bundled in a Pack.
 | 
						|
//
 | 
						|
// Pack
 | 
						|
//
 | 
						|
// A Pack is a File in the backend that contains one or more (encrypted) blobs,
 | 
						|
// followed by a header at the end of the Pack. The header is encrypted and
 | 
						|
// contains the ID, type, length and offset for each blob contained in the
 | 
						|
// Pack.
 | 
						|
//
 | 
						|
package repository
 |