Let --dry-run differentiate between creating a new file and overwriting an existing one?

Hello everybody,

as far as I can tell, there is no way to do a --dry-run and tell the difference between a file being created in the destination and an existing file being (partially) overwritten. In both cases, the output is “Skipped copy as --dry-run is set”.

But isn’t one of the main reasons for doing a --dry-run to be able to catch potentially harmful syncs before they happen? Overwritten data is just as lost as deleted data, whereas creating a new file is mostly harmless, so I think it would be useful to differentiate.

Some possible suggestions for more meaningful output:
”Skipped create as --dry-run is set”
”Skipped overwrite as --dry-run is set”
”Skipped copy (new file) as --dry-run is set”
”Skipped copy (existing file) as --dry-run is set”

What do you think?

  • Hans

welcome to the forum,

what about?
logger-flags
or
rclone_check

Thanks. I didn’t know about the logger-flags. They do make the distinction I wanted, but they also made me realize that neither they nor --dry-run nor check differentiate file moves via --track-renames. They get listed as file deletion plus file creation.
I guess it’s because each file gets output as it is processed, whereas --track-renames needs to collect them all in memory and determines file moves afterwards.

Is it possible to make rclone defer the log output until renames have been processed?
Or is there another logging feature that does make that distinction?