comparing directories recursively

Advertisement

zskillz
Guest

comparing directories recursively

v. 3.7.4
SFTP
SSH Protocol v. 2
ssh implementation openssh_3.8.1p1
encryption - aes
compression - no
file transfer protocol - SFTP(v3)

Norton Commander interface

I'm sorry if I just missed this, but I went through the FAQ and searched the forums and didn't find an answer/solution to the problem that I'm having.

When I have two directories open (local and remote) that I want to synchronize, the first thing that I do is press the compare directories button. Often times, a little window will pop up saying "No differences found" when I can plainly see that one directory has more subdirectories in it then the other. The number/name of files is identical, but there is a different number of subdirs that the compare command is having a problem identifying. I thought that perhaps I just hadn't found the "compare recursively" checkbox, but I can't find a mention of this anywhere in the help. I tried comparing by time and size, but that did not solve the problem either. Could you please tell me what to do? --- it's worth noting that if I synchronize directories, it does it recursively and they become synchronized, but that is not always what you want to do

As a separate comment -- I really like the program. I especially like the compare and synchronize options. I have used ftpVoyager8 for a long time just because it has this function, but with everything moving towards encryption, I think that will end soon. So --- what I would suggest is that if you press the compare button, another window pops up that give you several options.
1 - shows lists of files that exist/don't exist on local/remote dirs
2 - allows you to remove files/directories (using wildcards or whatever) from the comparison so, for example, you can synchronize all but subdirectory within the greater directory
3 - allows you to then synchronize the two directories (just as the current "synchronize" button does.

I think that a window like this would address several of the problems that I was reading about in other threads that were related to, but different from my own.


Thanks for you time,
-Z

Reply with quote

Advertisement

martin
Site Admin
martin avatar
Joined:
Posts:
41,518
Location:
Prague, Czechia

Re: comparing directories recursively

Compare Directories does not work recursively. I'll consider implementing it.

However for the scenario that you describe, it would be IMHO better to enhance the Synchronise function. For example that it would first scan for all the differences and display them in table, with options to ignore some (not to synchronize them). What do you think?

Reply with quote

Guest

Re: comparing directories recursively

I think you're probably right. Quite honestly, I think that the compare and synchronize functiions are so closely related that they're really quite difficult to separate into two different buttons. Perhaps one "synchronization" button that contains the compare functionality would be easier to implement and work into the structure of the program anyway. I do think that these capabilities would really enhance the usability of the program in general.

Regardless, thanks for your response, and I look forward to upcoming releases! :D:mrgreen:

thanks
-Z

Reply with quote

Marek Mänd
Guest

Re: comparing directories recursively

Compare is lightweight uninvasive function, it is to monitor whats what.
It only allows user to monitor. Whether he decides to synchronize is based upon the mood or whatever the user has at that time. He might decide not to invoke the copy command on the highlighted files.

Synchronize on the opposite to Compare means hard action, exchanging files, changing the state on storage systems, thus is invasive operation.

The Synchronize should stay robust and do his work with not much of asking and prompting.

Yet I might only want to see differences, not synchronize.
Thus it is not right to enhance the Synchronize button, but it is right to enhance Comapare button (which pops out form describing differences, and would allow to select entries of differences)... and then add a Synchronize button to that subform where the differences are displayed, so you can invoke the synchronize on selected items.

Question is, where this list should be displayed?
I suggest this list shall be displayed as like the "transfer queue" subform, possibly make tabs for "transfer queue" and "differences form" to save window space

As of current the Compare directories is relatively useless as it says that remote and local are equal, even if the remote has few directories more at the same level compared to local. While the program author knows it is so and it isnt programs functionality, it is still favourably to be declared as a minor bug, with reasoning, that current behaviour IS NOT THE INTUITIVE EXPECTATION of program users.

What does it mean?
It does mean that this is no COMPARE DIRECTORIES functionality but rather COMPARE FILES IN DIRECTORY functionality.
Using term COMPARE DIRECTORIES is misleading.

I have edited the
https://winscp.net/eng/docs/task_compare_directories
with section:
NB! As of current (latest release v 3.7.4), the program does not support comparing directories recursively. The different amount of subdirectories existing in compared directories will have no impact on the result of comparision, they are not taken in account.

so that the answer "not implemented" to intuitively expected functionality can quickly be found.
I hope my contribution there was acceptable.

--
Marek Mänd
Tallinn, Estonia

Reply with quote

Advertisement

You can post new topics in this forum