donquijote

Test Idea:nested shares

Recommended Posts

donquijote / mrkvs - please refer to my previous image - this will show you how to achieve your sync using .SyncIgnore

That image doesn't show, something is broken.

Share this post


Link to post
Share on other sites

Well yes, from technical point of view. What I tried to show was that the sub1 folder will be synced on all 3 machines, which is what we are asking for :) I still can't get what kind of problems this approach will cause.

I could immagine that it might cause confussion inside the app, possibly even make it crash.

Or perhaps some issues regarding to which file version is the most recent.

surely, i'd have to try it out. and i WILL try it out.

But i was thinking maybe other people have tried it before.

Share this post


Link to post
Share on other sites

I could immagine that it might cause confussion inside the app, possibly even make it crash.

Or perhaps some issues regarding to which file version is the most recent.

surely, i'd have to try it out. and i WILL try it out.

But i was thinking maybe other people have tried it before.

You won't be able to try it out, since SyncApp doesn't allow to make Secrets for folders within already synced ones.

So I'm trying to understand what kind of confusion this thing might cause. File version? I believe it's the same case as syncing any folder on 3 machines. Is that actually possible? (to share secrets with more than 1)

Share this post


Link to post
Share on other sites

Well yes, from technical point of view. What I tried to show was that the sub1 folder will be synced on all 3 machines, which is what we are asking for :) I still can't get what kind of problems this approach will cause.

Syncing "sub1" across 3 devices in itself isn't an issue - where the issue arises is if you're also trying to sync it's parent folder on a separate sync!

The solution, as I say, would be to use ".SyncIgnore"

So, setup a sync on the parent folder between your two devices (Machine 1 and 2), but add "sub1" as a filter into the .SyncIgnore files on both these machines.

Then, setup your separate "sub1" sync across your 3 devices

The key thing is filtering "sub1" so that the contents of that folder are ignored by the parent sync, and only processed by the "sub1" sync itself!

...and if you still can't see my previous image, here's an alternative link:

http://www.imagebam.com/image/3b9ed4248083692

Share this post


Link to post
Share on other sites

You won't be able to try it out, since SyncApp doesn't allow to make Secrets for folders within already synced ones.

i did not know that (since i did not try it out yet, and it was not obvious to me, from the techincal info i got so far.)

The solution, as I say, would be to use ".SyncIgnore"

So, setup a sync on the parent folder between your two devices (Machine 1 and 2), but add "sub1" as a filter into the .SyncIgnore files on both these machines.

Then, setup your separate "sub1" sync across your 3 devices

The key thing is filtering "sub1" so that the contents of that folder are ignored by the parent sync, and only processed by the "sub1" sync itself!

That is indeed "A" solution, but the issue of having to have a mental inventory of the subfolder is still there.

if,say, i buy a new machine and want all my giant folder to sync directly, i'd have to remember that some (at least one) subfolders are filtered out, and add them manually on my new machine.

which might be no problem if you have only one such subfolder, or perhaps an UNIMPORTANT subfolder. But neither is a guaranteed given fact.

Share this post


Link to post
Share on other sites

That is indeed "A" solution, but the issue of having to have a mental inventory of the subfolder is still there.

if,say, i buy a new machine and want all my giant folder to sync directly, i'd have to remember that some (at least one) subfolders are filtered out, and add them manually on my new machine.

It's important to remember that SyncApp is still in an "alpha" phase. I'm sure, in time, a more user-friendly interface for choosing exactly what's filtered/ignored when syncing will be implemented... however in the meantime, this functionality exists in the form of editable hidden ".SyncIgnore" files for each folder you're syncing.

These ".SyncIgnore" files allow you to specify what objects should be ignored/excluded from that folder's sync.

Therefore, if you wish to separately sync a sub folder within an already sync'd tree, you should exclude that sub folder from its parent's .SyncIgnore file so that the two sync operations don't interferer with each other!

Share this post


Link to post
Share on other sites

where the issue arises is if you're also trying to sync it's parent folder on a separate sync!

I'm not trying to delve into every detail, but why that might be an issue? In my perspective, those sync-jobs (for main folder and sub-folder) can live without even knowing about each other. Parent folders would sync as they used to. As soon as changes within 3rd machine's "c:\subfolder" are synced to 2nd machine's "d:\share1\sub1", on that 2nd machine those can be rendered as regular changes within local folder. This by-turn will trigger syncing between "c:\folder1" and "d:\share1" in regular fashion. That should work the opposite way as well.

The solution with .SyncIgnore is good until you are not really willing to sync those subfolders on machines 1 and 2. Which is kind of limited solution.

Share this post


Link to post
Share on other sites

The solution with .SyncIgnore is good until you are not really willing to sync those subfolders on machines 1 and 2. Which is kind of limited solution.

SHOULD be:

The solution with .SyncIgnore is good until you are not really willing to sync those subfolders on machines 1 and 2.

if i grasp the common understanding of the concept i introduced, syncing with machine2 would be REQUIRED to keep machine1 in sync with machine3

Share this post


Link to post
Share on other sites

SHOULD be:

The solution with .SyncIgnore is good until you are not really willing to sync those subfolders on machines 1 and 2.

if i grasp the common understanding of the concept i introduced, syncing with machine2 would be REQUIRED to keep machine1 in sync with machine3

As I understand, syncing machine 1 and 3 is not initial intention! So at the moment changes within "c:\folder1\sub1" won't be synced to 3rd machine's "c:\subfolder" directly. Which is not great, but totally fine, I think.

Share this post


Link to post
Share on other sites

Have I completely missed the point or something?!

Based on your original image you have 3 machines - Machines 1 and 2 sync as follows:

C:\folder1 on Machine 1 syncs with d:\share1 on Machine 2

...by association, a subfolder "sub1" then also syncs (as part of the previous sync) between c:\folder1\sub1 (on Machine1) and d:\share1\sub1 (on Machine 2)

In addition, you then want ONLY the "sub1" folder to sync to another location on Machine 3?

If my understanding of your requirements is correct, my solution is correct way to achieve this! This will keep "sub1" in sync between all 3 machines, as well as allowing the correct parent syncing between Machines 1 and 2

Share this post


Link to post
Share on other sites

It does!

When I'm trying to create a new sync-job for a folder within another folder, which is already synced, I get this: "This folder cannot be added to SyncApp as it is part of a folder that is already syncing."

Share this post


Link to post
Share on other sites

When I'm trying to create a new sync-job for a folder within another folder, which is already synced, I get this: "This folder cannot be added to SyncApp as it is part of a folder that is already syncing."

What version of SyncApp are you using?

Share this post


Link to post
Share on other sites

Have I completely missed the point or something?!

Based on your original image you have 3 machines - Machines 1 and 2 sync as follows:

C:\folder1 on Machine 1 syncs with d:\share1 on Machine 2

...by association, a subfolder "sub1" then also syncs (as part of the previous sync) between c:\folder1\sub1 (on Machine1) and d:\share1\sub1 (on Machine 2)

In addition, you then want ONLY the "sub1" folder to sync to another location on Machine 3?

If my understanding of your requirements is correct, my solution is correct way to achieve this! This will keep "sub1" in sync between all 3 machines, as well as allowing the correct parent syncing between Machines 1 and 2

I think you didn't miss the point!

But. By ignoring c:\folder1\sub1 (on Machine1) and d:\share1\sub1 how would they sync on those machines (1 and 2)?

Share this post


Link to post
Share on other sites

I think you didn't miss the point!

But. By ignoring c:\folder1\sub1 (on Machine1) and d:\share1\sub1 how would they sync on those machines (1 and 2)?

You basically setup TWO sync jobs:

The first syncs the parent folder between machine 1 and 2 (but excludes the "sub1" sub folder)

The second syncs "sub1" between all 3 machines

...so sub1 is only ignored by the parent sync job! - it will still sync between the 3 machines, because it has its own sync job

Illustration:

http://www.imagebam.com/image/a6112e248086875

Share this post


Link to post
Share on other sites

I think you didn't miss the point!

But. By ignoring c:\folder1\sub1 (on Machine1) and d:\share1\sub1 how would they sync on those machines (1 and 2)?

throughut this discussion, i was not advocating ignoring anything. I merely acknowledged one proposed setup.

Share this post


Link to post
Share on other sites

You basically setup TWO sync jobs:

The first syncs the parent folder between machine 1 and 2 (but excludes the "sub1" sub folder)

The second syncs "sub1" between all 3 machines

...so sub1 is only ignored by the parent sync job! - it will still sync between the 3 machines, because it has its own sync job

Got you!

Should I edit .SyncIngone on both, 1 and 2, machines?

Also, I just tried to exclude a subfolder from synced one (by editing .SyncIngnore") and then create a separate sync-job with no success — the same error returned "This folder cannot be added to SyncApp as it is part of a folder that is already syncing."

Anyway, this approach, I think, is too laborious and is not that intuitive as it could be, isn't it?

Share this post


Link to post
Share on other sites

Got you!

Should I edit .SyncIngone on both, 1 and 2, machines?

Yes, you would need to ignore "sub1" in the .SyncIgnore files on the parent folder of both Machines 1 and 2

Anyway, this approach, I think, is too laborious and is not that intuitive as it could be, isn't it?

Please refer to my earlier post

Share this post


Link to post
Share on other sites

I don't want to open this whole discussion back up, but I would like to suggest that the BitTorrent folks at least consider supporting nested shares. There are plenty of valid reasons for using them, and I'm sure the potential 'problems' could be solved inside the sync app itself without having to resort to manual hacks and work-arounds.

I sure could use nested shares right now. I have a large folder of media that I sync between local machines. I periodically want to sync individual sub-folders to external machines and today I have to copy all that data somewhere else before I can setup a new share. Tough on disk space.

Share this post


Link to post
Share on other sites

+1 for this features.

I have this big folder containing all my documents, synced between my local Nas and server for backup and network access.

But sometime I need only some subfolder to be synced. Would be great to generate key for subfolder when we need one.

Share this post


Link to post
Share on other sites

I just downloaded and started using btsync today and this is the first thing I tried to do.

It would be very welcome, but I also have another idea for it.

Machine1 has folder c:\folder1 syncing with d:\share1 (in my case this would be used as a backup solution),

and c:\folder1\sub1 is syncing with d:\share1\sub1 and e:\sub1(machine3). (send specific files to colleagues)

Would it be possible for better peering to occur?

This would greatly increase speed and would reduce the chance that a computer could be off.

For example:

The folder sub1 is technically located on both Machine1 and Machine2. Both of these machines have the same exact files and versions because they have already synced.

When Machine3 goes to sync \sub1 from Machine2, it should automatically realize based on its communication with Machine2 that \sub1 is also on Machine1, and can therefore connect and download from both machines at the same time.

In my mind it would work kinda like normal torrenting. If I download a torrent, I can choose to only download a selected file contained in that torrent, but I can still leech it from all the peers that have that file.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.