recreate: when --target is given, do not detect "nothing to do"

use case:

borg recreate -a src --target dst can be used to make a copy
of an archive inside the same repository, see #7254.
This commit is contained in:
Thomas Waldmann 2023-01-14 19:05:50 +01:00
parent ca1f1281d5
commit aa78314ffe
No known key found for this signature in database
GPG key ID: 243ACFA951F78E01

View file

@ -2259,7 +2259,14 @@ class ArchiveRecreater:
target = self.create_target(archive, target_name)
if self.exclude_if_present or self.exclude_caches:
self.matcher_add_tagged_dirs(archive)
if self.matcher.empty() and not self.recompress and not target.recreate_rechunkify and comment is None:
if (
self.matcher.empty()
and not self.recompress
and not target.recreate_rechunkify
and comment is None
and target_name is None
):
# nothing to do
return False
self.process_items(archive, target)
replace_original = target_name is None