diff -U 3 -H -d -r -N -- duplicity-0.6.22_orig/duplicity/commandline.py duplicity-0.6.22/duplicity/commandline.py --- duplicity-0.6.22_orig/duplicity/commandline.py 2013-08-22 15:30:08.000000000 +0200 +++ duplicity-0.6.22/duplicity/commandline.py 2013-11-24 08:40:14.348030806 +0100 @@ -245,6 +245,9 @@ # source directory doesn't match previous backup source directory. parser.add_option("--allow-source-mismatch", action="store_true") + # If this is true generate the alternate filenames. + parser.add_option("--alternate-filenames", action="store_true") + # Set to the path of the archive directory (the directory which # contains the signatures and manifests of the relevent backup # collection), and for checkpoint state between volumes. @@ -958,6 +961,9 @@ if m: n+=1 assert n <= 1, "Invalid syntax, two conflicting modes specified" + + assert (not(globals.alternate_filenames and globals.short_filenames)), command_line_error("--alternate-filenames and --short-filenames cannot be used in combination") + if action in ["list-current", "collection-status", "cleanup", "remove-old", "remove-all-but-n-full", "remove-all-inc-of-but-n-full"]: assert_only_one([list_current, collection_status, cleanup, diff -U 3 -H -d -r -N -- duplicity-0.6.22_orig/duplicity/file_naming.py duplicity-0.6.22/duplicity/file_naming.py --- duplicity-0.6.22_orig/duplicity/file_naming.py 2013-08-22 15:30:08.000000000 +0200 +++ duplicity-0.6.22/duplicity/file_naming.py 2013-11-24 08:58:12.647499359 +0100 @@ -55,10 +55,10 @@ if full_vol_re: return - full_vol_re = re.compile("^" + globals.file_prefix + "duplicity-full" + full_vol_re = re.compile("^" + globals.file_prefix + "duplicity-full(-difftar|)" "\\.(?P