-
-
Notifications
You must be signed in to change notification settings - Fork 718
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multi-level check method #937
Comments
I definitely think hashes should only be checked if the file sizes are the same, the hash won't be the same if the sizes are different anyways (collisions are possible but that totally goes against the use case for this program) that should honestly be how the hash check always works but I haven't tested it because I haven't needed hash comparisons before |
In #956 I added size and name check. Currently it works quite optimal(not sure if this can be speedup more):
|
Great! That will cover most use cases. I hope to see more sophisticated check method afterwards in the future though. For example, simple size check may fail if data is saved as fixed size chunks, or text count is identical in a text file. In such cases, modified date may help to further identify if they are safe to be considered identical. Would you mind if I keep this issue open? |
I searched for this function, but couldn't find it. Edit: |
For now, only one of check methods can be chosen as a method. #908 also suggests more detailed check method selection. However, IMO, it would be more rational to compare file name or size, or even both of them first, and then fall back to the hashing for the last resort. With stackable check methods, more obscure conditions such as edit date or creation date could also be adopted. While czkawka is fast on its own, this would even speed up process by reducing disk IO, especially on magnetic drives.
The UI I propose is to have some sort of list, where we can add check methods one-by-one with priority.
The text was updated successfully, but these errors were encountered: