Page 1 of 1
Report broken reparse points after copying/moving
Posted: 2009-09-13, 07:07 UTC
by MVV
If I copy/move folder with junctions or symlinks, TC just creates new folders with contents of juncions/symlinks and breaks links. I think it wold be great if TC shows report with dir list for which it created dir instead of junction and files for which it replaced symlink with real file. For example, following message box:
TC (as I wish) should wrote:
Please note that following junctions copied/moved as folders:
C:\test\jnc2_d_test -> F:\new\test\jnc2_d_test
C:\test\syml_1.txt -> F:\new\test\syml_1.txt
...
With ability to use Ctrl+C to copy message contents of course.
And of course an advanced copy/move option to preserve reparse points greets!
Posted: 2009-09-13, 11:59 UTC
by Balderstrom
Support++ Report.
Agree++ (Advanced Copy/Move options)
Balderstrom wrote:
Options in .ini:
FollowJunction=0|1|2
FollowHardlink=0|1|2
0: Do Not reparse, create a new Valid Junction|Hardlink if possible.
# If a Junction points to a Folder that is within the path being copied,
then the new Junction would point to the new path.
# If a Hardlink cannot be created, due to different Volume, then a copy is created.
In win7/Vista, Symlinks are supported, that can traverse different volumes.
1: Reparse and always Copy contents to new Location.
If action is a Move operation, contents are copied instead.
2: Reparse and allow Move to new Location.
#If action is a Move operation, contents are moved.
#If file has hardlink clones, moving it to another Volume will break the clones,
this should be disallowed. A copy is done instead.
These could also have Options in the Advanced section of Copy/Move Dialog for overriding your defaults.
Posted: 2009-09-13, 14:27 UTC
by StatusQuo
Support++
Re-creating junctions may be dangerous for users not knowing them (compare two locations > find duplicate files > delete on one side > wonder why they also disappear on the other side).
To prevent users complaining, there could be an advanced option in INI that enables duplication of junctions/symbolic links:
copy contents in standard configuration (like now), copy/move junctions/symbolic links after the user has enabled the option.
Posted: 2009-09-13, 14:48 UTC
by Balderstrom
@StatusQuo *grin* You didn't click on my link did you!

Posted: 2009-09-13, 15:17 UTC
by StatusQuo
2
Balderstrom
Not sure, but possible.

I just remembered the objections against adding it...
Posted: 2009-09-14, 04:36 UTC
by MVV
Don't forget about symlinks. They also should have place in our dicsussion. BTW, symlink target may be viewed in its properties dialog (but not always correctly as I
found 
). So, we need options for file reparse points and folder reparse points (or just one setting for all RPs).
Attention! Plz don't touch hardlinks, they have separate place in file system. There is no way to get target file for hardlink, each hardlink has equal rights in FS. On file move they always moved (within volume), on file copy they copied. If you want to create hardlink, you should do this separately, not through TC copy dialog. You may change file through any hardlink so you shouldn't create hardlink if you want to backup file current state for example.
BTW, the main topic's request - is to get info when TC kills reparse point and creates usual file system object instead.

Posted: 2009-09-14, 09:18 UTC
by Balderstrom
@MVV, Yes I support the report - but I'd rather it was less necessary.
If I have a Junction: N:\TEST\TEMP --> C:\TEMP
And I Drag/Move N:\Test to L:\Test OR
Drag/Move N:\TEST\TEMP to L:\TEMP
In both cases, the junction is converted into a regular folder. Yet, if I Cut and Paste (Explorer or TC) OR Drag & Drop in Explorer, then the junction is preserved! Whether or not I shift drag/drop or regular drag/drop Explorer preserves the junction.
That is expected behaviour, I believe TC's to be broken. Requesting a feature to notify us of TC's broken behaviour seems odd to me. Yet it would be good to know when it does convert junctions|hardlinks if that is your preferred (default) action for copy/move or if you've overridden your preferred action (of preserve junctions) for that particular copy/move.
The only time I might want Conversion of a Junction to a normal folder would be if using the SyncTool - and even then not always either.
Posted: 2009-09-14, 20:03 UTC
by StatusQuo
Additionally to INI options I'd like to have an "ask user" option to decide individually.
I think presets would probably never meet 100% of the cases.
P.S.: An
older discussion including some arguments.