"IncludeList" (opposite of IgnoreList)


1412

Recommended Posts

  • 2 months later...

Hi team,

On a device with the read-only key of a folder, I'd like to add a .SyncIgnore that will ignore all files *except* ones that I specifically whitelist.

For example:


// Ignore everything:
*
// Except the following folders:
!data
!files

This would allow each read-only client to specify the files that they want to receive. Each client should be able to control independently which files they want to ignore and which they want to receive.

This is similar to how git works, see the man page for .gitignore (http://git-scm.com/docs/gitignore)

Thanks for all your hard work.

Link to comment
Share on other sites

Ah, cool. Although I think having a single file that follows git's syntax is more powerful than having two separate files. If you have two files (SyncIgnore and SyncInclude) you have to hard-code a precedence as one entire file must be processed before the other. That's why git does it all in one file.

Link to comment
Share on other sites

  • 1 month later...

Make a *whitelist* (i.e. the reverse of the current blacklist 'SyncIgnore') which lists only the files / subfolders within the sync folder which should be synced. Other items will not be synced. To avoid conflicts, let e.g. SyncIgnore overrule which means when there is a SyncIgnore and a whitelist, the whitelist will be ignored.

Moreover, include the web interface on *all* platforms (including Android and iOS) and not on Ubuntu only. Then BTSync even running on a smartphone / tablet can be controlled from a computer or the other way around just by using a webbrowser.

Link to comment
Share on other sites

  • 4 months later...

Don't know if this has been requested before, but here is my own version of the request anyway. Instead of using .SyncIgnore for specifying files to ignore, why not make it a general file where you can specify which files to ignore and/or include. The format of the file should use "ignore:file_or_folder_pattern" and/or "include:file_or_folder_pattern". This way you can control the files to be synced easliy, especially when you want to deny the majority of the files/folders, and only allow a few folders to be synced.

For example, assuming we have these rules in the file:

ignore:*

include:Pictures

include:Documents

Then the synced folder initially ignores all files, but the "Pictures" and "Documents" folders are an exception, and should be synced. Similarliy, if we have these rules:

include:*

ignore:Downloads

will sync all the files, except the folder "Downloads". Ideally, the default behaviour should be include all, so no need to specify "include:*" here, but I left it explicity for clairity.

I understand that what I am asking for can be done already using .SyncIgnore, but the current format requires you to update the .SyncIgnore constantly if you want to sync specific folders out of many folders, and new folders are constantly added (which requires you to add them manually to ignore them).

As for the name for such suggested format, maybe call it ".SyncRules", ".SyncList", or ".SyncTree"?

Link to comment
Share on other sites

Don't know if this has been requested before, but here is my own version of the request anyway. Instead of using .SyncIgnore for specifying files to ignore, why not make it a general file where you can specify which files to ignore and/or include. The format of the file should use "ignore:file_or_folder_pattern" and/or "include:file_or_folder_pattern". This way you can control the files to be synced easliy, especially when you want to deny the majority of the files/folders, and only allow a few folders to be synced.

For example, assuming we have these rules in the file:

ignore:*

include:Pictures

include:Documents

Then the synced folder initially ignores all files, but the "Pictures" and "Documents" folders are an exception, and should be synced. Similarliy, if we have these rules:

include:*

ignore:Downloads

will sync all the files, except the folder "Downloads". Ideally, the default behaviour should be include all, so no need to specify "include:*" here, but I left it explicity for clairity.

I understand that what I am asking for can be done already using .SyncIgnore, but the current format requires you to update the .SyncIgnore constantly if you want to sync specific folders out of many folders, and new folders are constantly added (which requires you to add them manually to ignore them).

As for the name for such suggested format, maybe call it ".SyncRules", ".SyncList", or ".SyncTree"?

I like this, and even more with Regular Expression.

Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...
  • 2 months later...
  • 2 weeks later...
  • 3 months later...

I would like the ability to flip the exclude function on it head!

 

What I means - Would it be possible to make all files/folders in a given location to be all excluded. Using the same way with a *, but then have a include list instead.

This way I could script something external to include a file/folder when I choose.

Link to comment
Share on other sites

  • 3 months later...

It would be great if BitTorrent Sync allowed earlier general patterns to be negated by later more specific patterns. This would allow users to choose between whitelist and blacklist behaviour for IgnoreList and StreamList. For example:

 

# whitelist, only sync streams listed below

com.apple.metadata:_kMDItemUserTags

com.apple.ResourceFork
com.apple.metadata:kMDItemFinderComment%
 
# blacklist, sync all streams except any negated below
*
!com.apple.FinderInfo
 
Also, support for double asterisk glob pattern matching would be great. For example:
 
# IgnoreList
/Some/**/Path
 
Would match both:
 
Some/Foo/Path
Some/Foo/Bar/Path
 
It would avoid the need for users to have to know and count exactly how many levels of depth need to be ignored. For example:
 
# IgnoreList
/Some/*/Path
/Some/*/*/Path
 
Likewise, it should be possible to negate these:
 
# IgnoreList
/Some/Path/*
!/Some/Path/Foo
 
Link to comment
Share on other sites

  • 11 months later...
  • GreatMarko changed the title to "IncludeList" (opposite of IgnoreList)
  • 1 month later...

I'm using Sync to sync large projects between workstations in NY, CHI, and LA (works great so far). I would really like to see a way to always have certain folders be selective sync. Could be like the .ignorelist. Maybe there is a way to do this already? And apologies if this has been talked about. It's my first week with the product.

The main reason for this is not everyone needs access to a certain set of files and it will be like that on every project. Every project will have footage broken out into sequence and shot. Not everyone will be on Sequence A but it would really be awesome to selectively sync it if a person gets put on Sequence A. 

If I put it in the ignore list, obviously it won't show up at all and if we do a selective sync then the crew will need to click on a lot of folders to sync those. The additive process is a lot more work than the subtractive. 

Link to comment
Share on other sites

  • 1 year later...

I would LOVE to see whitelist implemented in Resilio Sync too!

And, it seems it has already been implemented in Resilio Connect.  See here: https://connect.resilio.com/hc/en-us/articles/115001069950-Ignoring-and-Whitelisting-Files-on-Agents-Ignore-List-

But, a similar help article for Resilio Sync does not mention whitelist: https://help.resilio.com/hc/en-us/articles/205458165-Ignoring-files-in-Sync-Ignore-List-

I tried using the * ! syntax from the Connect article in Sync, but id did not work.

Link to comment
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.