Synching Soft Links

Discussion of new Synchronize It! version.
brahman
Posts: 180
Joined: Thu Jan 11, 2007 6:18 pm

Synching Soft Links

Post by brahman »

Hi Igor,

SI does not copy the actual soft links from target to source but goes on to copy the files of the referred link.

It would be nice to have a copy option so that soft links are actually copied and not the underlying files.

This will avoid endless loops also, in case there is a soft link on the target referring back to the source.

However, it is wise to also have SIs current behavior since there are many sitations where one may need the files on the actual target.

Regards,

Brahman

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

In fact I have never used these link features myself. But I will add this to to-do list.

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

Hello, I had finally looked at soft links handling. Did you mean hard links in this post? Because soft l;inks are just shortcuts, and they are copied correctly (as shortcuts). And hard links are copied by creating actual file copy.

calvini
Posts: 70
Joined: Thu Aug 16, 2007 10:09 am

Post by calvini »

Something I came across with softlinks is the problem of cyclic structures (as already mentioned above): When comparing a directory which contains a soft link to itself, scanning never stops. So when scanning, SI should remember what has been scanned already - and if a softlink steps back into already scanned directories, no rescanning should occure.

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

Are you talking about local NTFS links?

calvini
Posts: 70
Joined: Thu Aug 16, 2007 10:09 am

Post by calvini »

I don't think - it happened on the server of one of my websites, where some *nix-system is running. In one of the directories there was a softlink named "php" which linked to the directory itself and while watching the scanning process I saw an endless growing path in the statusline with many ".../php/php/php/php/php/..." in it, before I realized what happened. Should be easy to reproduce?

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

Yes, that's what I thought. I will try to fix that, thank you!

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

brahman, speaking of junctions - I have now version that can handle them as files - is this what you need? I'm asking because now I'm think why would anyone copy this as files? :)

brahman
Posts: 180
Joined: Thu Jan 11, 2007 6:18 pm

Post by brahman »

Thank you very much, Igor.

Fantastic!

Works like a charm.

I tested it extensively and found that it also works as expected when deleting junctions.

Not even TC can copy junctions!

Congratulations and well done!

BTW I know of NO OTHER synching program out there that can do this!

Another FIRST for SynchronizeIt! :).

Kind Regards,

Brahman

P.S.: Here is an example of the usefulness of this feature:

I am maintaining an external backup drive with a synched identical backup copy of my main drive. My main drive has many junctions, since I work with them a lot for various reasons (f.e. to keep data folders on a separate partition even though the software requires the data in its program folder: make a junction and problem solved!).

Before the junctions would copy the files (redundantly and wasting space). Now the files are not copied, just the junctions - in other words the true structure of the drive partition is being synched. A very useful feature! :lol:

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

I tend to think that copying junction is hardly usable - this is not an actual backup. Maybe additional option to skip junctions completely would be useful?

brahman
Posts: 180
Joined: Thu Jan 11, 2007 6:18 pm

Post by brahman »

Yes, I think that would be useful as an additional option, but not at the expense of the new option "copy junctions as files". It should remain there.

Maybe like this with radio buttons which only allow one option to be selected:

Folder Junctions: () Copy Junction as File () Follow Folder Links () Skip

this way you have the word "Links" and "Folder" in there, which may help some users to remember what junctions are, since they are called different ways (soft links, reparse points etc.).

Maybe you do not see the use of copying actual junctions because you are not in the habit of using junctions on your computer ;), but it cuts down a lot on having duplicate files on your target if one is in the habit of using them.

When copying junctions not as files but when they are followed, it may also be useful if the user sees in the preview window that a junction is being followed (maybe by having the junction word displayed in the folder size column, maybe also by a different icon or color scheme) and alerted to the fact that he may be placing redundant information to the target.

On a related topic:
You just realized very nicely another user's suggestions to show AFTER synching what actions have been performed by using those little checked action icons (and didn't even tell us about it in your blog! :)).

Now it would be nice to have these icons also in the report printing after a synch was done.

Regards,

Brahman

brahman
Posts: 180
Joined: Thu Jan 11, 2007 6:18 pm

Post by brahman »

For the benefit of other users, I wanted to give some links about the topic in this thread:

Junction points are a powerful tool in Windows XP and Vista. Yet in XP there are no tools and no information in the help documentation about them.

If some readers would like to know more about them or their use, I would recommend a look at LinkMagic.

If you are a Total Commander user, I recommend NTFS Links, which easily allows you to make soft and hard links in TC. I have assigned it a hotkey in TC and use it all the time.

Regards,

Brahman

Spitfire_ch
Posts: 84
Joined: Mon May 21, 2007 9:11 am
Location: Basel, Switzerland

Post by Spitfire_ch »

I am also using NTSF links, but more for hardlinks than for junktions. Unfortunately, there seems to be no way to integrate hardlinks into synchronize it. Too bad, but clearly microsoft's mistake, not grigsoft's.

http://www.grigsoft.com/forum/viewtopic.php?t=1320

edit:

I just saw the description of the new beta:

"1. option to handle folder junctions (hard links) as file, along with recursion detection"

Is the new version really able to handle junctions AND hard links, or just junctions? If the first is the case, how were you able to solve this problem?

Best wishes

- spit

brahman
Posts: 180
Joined: Thu Jan 11, 2007 6:18 pm

Post by brahman »

It says "hard links" but he means "soft links" (=junctions).

Regards,

Brahman

grigsoft
Site Admin
Posts: 1673
Joined: Tue Sep 23, 2003 7:37 pm
Contact:

Post by grigsoft »

Brahman is right, my fault's here.

Post Reply