1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-27 10:18:12 +00:00
Commit graph

131 commits

Author SHA1 Message Date
Thomas Waldmann
8d8374d23c ran build_api + build_usage 2016-05-20 14:34:48 +02:00
Thomas Waldmann
962c2e9d54 borg with-lock REPO CMD ARGS 2016-05-02 23:29:17 +02:00
Marian Beermann
0bc0fa22b4
recreate: improve tests, docs, check chunk availability[1]
[1] So if e.g. delete/prune/check are run these can delete the
    recreate_partial_chunks. This is now caught and handled correctly.
2016-04-10 15:59:12 +02:00
Marian Beermann
4b5e6ffa77
Assimilate "borg comment" into "borg recreate" 2016-04-10 14:09:09 +02:00
Marian Beermann
a3ee9d2c5f borg recreate: Re-create existing archives.
Use with caution: permanent data loss by specifying incorrect patterns
is easily possible. Make a dry run to make sure you got everything right.

borg recreate has many uses:
- Can selectively remove files/dirs from old archives, e.g. to free
  space or purging picturarum biggus dickus from history
- Recompress data
- Rechunkify data, to have upgraded Attic / Borg 0.xx archives deduplicate
  with Borg 1.x archives. (Or to experiment with chunker-params for
  specific use cases

It is interrupt- and resumable.

Chunks are not freed on-the-fly.
Rationale:
  Makes only sense when rechunkifying, but logic on which new chunks to
  free what input chunks is complicated and *very* delicate.

Future TODOs:
- Refactor tests using py.test fixtures
  -- would require porting ArchiverTestCase to py.test: many changes,
     this changeset is already borderline too large.
- Possibly add a --target option to not replace the source archive
  -- with the target possibly in another Repo
     (better than "cp" due to full integrity checking, and deduplication
      at the target)
- Detect and skip (unless --always-recompress) already recompressed chunks

Fixes #787 #686 #630 #70 (and probably some I overlooked)
Also see #757 and #770
2016-04-10 13:54:44 +02:00
Marian Beermann
0a369c0985
Better help texts and Sphinx reproduction of usage
- Group options
- Nicer list of options in Sphinx
- Deduplicate 'Common options'
  (including --help)

The latter is done by explicitly declaring --help in the common_parser,
which is then inherited by the sub-parsers; no change in observable
behaviour.
2016-04-10 01:28:19 +02:00
Thomas Waldmann
cece7f9e6d merged 1.0-maint into master 2016-04-10 01:13:35 +02:00
Thomas Waldmann
d5d037b97d ran build_api build_usage 2016-04-08 23:38:46 +02:00
Lauri Niskanen
327c7219df Add archive comments
- Archives now have a new metadata field 'comment'
- 'info' command shows a comment if it's present
- 'create' command now has option '--comment' for adding comments to archives.
- A new command 'comment' is added for modifying the comments on existing
  archives.

Resolves #842.
2016-04-08 19:03:14 +03:00
Lauri Niskanen
9d1a30c08b Add '--sort' option for sorting diff command output
Previously, on 'borg diff', the output always had first the modifications, then
additions, and finally removals. Output may be easier to follow if the various
kinds of changes are interleaved. This commit is a simple solution that first
collects the output lines and sorts them by file path before printing. This new
behavior is optional and disabled by default. It can be enabled with '--sort'
command line option.

This option will be especially useful after the planned multi-threading changes
arrive. Multi-threading may shuffle the archive order of files making diff
output hard to follow without sorting.

Resolves #797.
2016-03-31 18:55:02 +03:00
Marian Beermann
9cf129935e borg diff help: clarify: for new archives different chunker params still require content compare 2016-03-18 15:42:32 +01:00
Marian Beermann
e64d91b735 Update borg diff help message regarding --same-chunker-params 2016-03-18 13:30:39 +01:00
Marian Beermann
343d84b427 ItemFormatter: group keys in help output 2016-03-18 13:29:49 +01:00
Marian Beermann
89120a9843 Update usage docs 2016-03-18 12:17:57 +01:00
Daniel Reichelt
9adf13d8b9 add changes from running build_api and build_usage 2016-03-17 14:35:56 +01:00
Daniel Reichelt
e1f6a34820 provide wrapper for borg mount, fixes #743
- add archiver.main_mount()

- provide borgfs behaviour when the monolithic binary is called via a
  symlink called borgfs

- docs: update usage of mount subcommand, provide examples for borgfs and
  add symlink creation to standalone binary installation

- run build_usage

- add entry point in setup.py

- patch helpers.py:get_keys_dir() to allow mounting fstab entries with
  "user" option set

  Without this, setuid() called at some point by mount changes the HOME
  environment variable to '/root' and os.expanduser('~') would return
  '/root' as well, thus the mount would fail with
 	 PermissionError: [Errno 13] Permission denied: '/root/.config'
  After setuid(), the HOME variable stays intact, so we still can
  explicitly query USER's home.

  Also, os.path.expanduser() behaves differently for '~' and '~someuser'
  as parameters: when called with an explicit username, the possibly set
  environment variable HOME is no longer respected. So we have to check if
  it is set and only expand the user's home directory if HOME is unset.

- add myself to AUTHORS
2016-03-17 01:40:17 +01:00
Thomas Waldmann
3ae8a95935 ran build_api and build_usage 2016-02-27 20:55:14 +01:00
Thomas Waldmann
5ffb0fd7cd borg upgrade: add to docs that only LOCAL repos are supported 2016-02-07 21:08:20 +01:00
Thomas Waldmann
316f5a345f docs: borg upgrade also handles borg 0.xx -> 1.0 2016-02-07 19:23:06 +01:00
Thomas Waldmann
c42f3d07f4 run build_usage 2016-02-07 14:50:39 +01:00
Thomas Waldmann
dee1d462cc ran setup.py build_usage 2016-01-23 20:54:20 +01:00
Thomas Waldmann
2ecfa54aee ran build_api and build_usage 2015-12-13 15:47:03 +01:00
Thomas Waldmann
f7abff87f9 ran build_usage 2015-12-08 10:21:20 +01:00
Antoine Beaupré
8e36075fe9 commit usage files directly into git
the generation of those files was causing us way too much pain to
justify automatically generating them all the time.

those will have to be re-generated with `build_api` or `build_usage`
as appropriate, for example when function signatures or commandline
flags change.

see #384
2015-11-13 10:42:52 -05:00
Jonas Borgström
052e4f2074 Remove some autogenerated files 2014-02-18 23:10:32 +01:00
Jonas Borgström
faedaf8160 Basic repository consistency check functionality.
Still no archive metadata validation or repair functionality.
2014-02-05 00:04:30 +01:00
Dan Christensen
6b639e4c22 Update prune docs and a few other things in usage.rst. 2014-02-03 20:11:47 -05:00
Jonas Borgström
530dfd1558 Documentation update 2013-10-03 21:00:54 +02:00
Jonas Borgström
a51a10a96c More documentation improvements. 2013-08-04 23:20:22 +02:00
Jonas Borgström
a35339f2c2 Renamed commands.rst to usage.rst 2013-08-04 21:23:12 +02:00
Jonas Borgström
b6c8392c03 More documentation work 2013-08-03 13:05:06 +02:00