--no-traverse vs --no-check-dest


Can anybody help clarify the difference between these two options and when one is better than the other?


--no-traverse will cause the destination not to be listed. Rclone will find each file from the source transfer in the destination individually to see if it needs transferring.

This is great if you are copying just a few files (using --files-from or --max-age 1d) into a large tree of files.

--no-check-dest - I'm going to quote the docs here

The --no-check-dest can be used with move or copy and it causes rclone not to check the destination at all when copying files.

This means that:

  • the destination is not listed minimising the API calls
  • files are always transferred
  • this can cause duplicates on remotes which allow it (eg Google Drive)
  • --retries 1 is recommended otherwise you'll transfer everything again on a retry

This flag is useful to minimise the transactions if you know that none of the files are on the destination.

This is a specialized flag which should be ignored by most users!

So if in doubt use --no-traverse!

Can you tell more about your use case?

I promise I did read the documentation before asking, and yet I just couldn't wrap my head around their differences, but I think I get it now!

I guess when I saw --no-traverse as the destination will not be listed, that read to me that the destination will not be checked, just like --no-check-dest.

I'm trying to push daily zip backups of a folder to B2, I want them pushed everyday without any consideration for the destination and let B2 keep versioning the zip (which is named the same thing every day). So --no-check-dest it is.

Thanks for your help, rclone is amazing.

No worries - questions are fine!

Let's say on Tuesday the backup is identical to that on Monday. Rclone will push it up anyway with the --no-check-dest file. Without it would spot it was identical and just update the timestamp.

As long as you are OK with that behavior you are good to go!

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.