Sun, 03 Jun 2018 16:05:49 +0200
adds documentation for new dav-sync features
docs/src/add-tag.md | file | annotate | diff | comparison | revisions | |
docs/src/archive.md | file | annotate | diff | comparison | revisions | |
docs/src/header.html | file | annotate | diff | comparison | revisions | |
docs/src/index.html | file | annotate | diff | comparison | revisions | |
docs/src/list-tags.md | file | annotate | diff | comparison | revisions | |
docs/src/pull.md | file | annotate | diff | comparison | revisions | |
docs/src/push.md | file | annotate | diff | comparison | revisions | |
docs/src/remove-tag.md | file | annotate | diff | comparison | revisions | |
docs/src/set-tags.md | file | annotate | diff | comparison | revisions | |
docs/src/sync-configuration.md | file | annotate | diff | comparison | revisions |
--- a/docs/src/add-tag.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/add-tag.md Sun Jun 03 16:05:49 2018 +0200 @@ -0,0 +1,13 @@ +--- +title: 'dav-sync add-tag' +--- + +**`dav-sync add-tag [-s <syncdir>] <file> <tag>`** + +Adds a tag to a SyncDirectory file. The *file* argument must be a normal file path. If multiple SyncDirectories contain this file, the SyncDirectory must be specified with the **`-s`** option. + +Tags must be enabled for the SyncDirectory. See [Configuration][1] for details. + +**`-s <syncdir>`** SyncDirectory for this file + +[1]: ./sync-configuration.html
--- a/docs/src/archive.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/archive.md Sun Jun 03 16:05:49 2018 +0200 @@ -2,7 +2,7 @@ title: 'dav-sync archive' --- -**`dav-sync archive [-cld] <directory>`** +**`dav-sync archive [-cld] [-t <tags>] <directory>`** Uploads all new and modified files to the server. The command is similar to the push command, however it does not delete files on the server. @@ -14,3 +14,4 @@ **`-d`** Don't lock the repository (default) +**`-t <tags>`** Only sync files that match the tag filter expression
--- a/docs/src/header.html Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/header.html Sun Jun 03 16:05:49 2018 +0200 @@ -17,6 +17,7 @@ <li><a href="move.html">move</a></li> <li><a href="export.html">export</a></li> <li><a href="import.html">import</a></li> + <li><a href="get-property.html">get-property</a></li> <li><a href="set-property.html">set-property</a></li> <li><a href="remove-property.html">remove-property</a></li> <li><a href="lock.html">lock</a></li>
--- a/docs/src/index.html Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/index.html Sun Jun 03 16:05:49 2018 +0200 @@ -28,6 +28,7 @@ <li><a href="move.html">move</a></li> <li><a href="export.html">export</a></li> <li><a href="import.html">import</a></li> + <li><a href="get-property.html">get-property</a></li> <li><a href="set-property.html">set-property</a></li> <li><a href="remove-property.html">remove-property</a></li> <li><a href="lock.html">lock</a></li>
--- a/docs/src/list-tags.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/list-tags.md Sun Jun 03 16:05:49 2018 +0200 @@ -0,0 +1,12 @@ +--- +title: 'dav-sync add-tag' +--- + +**`dav-sync list-tags [-s <syncdir>] <file>`** + +Lists all file tags. + +Tags must be enabled for the SyncDirectory. See [Configuration][1] for details. + +**`-s <syncdir>`** SyncDirectory for this file +
--- a/docs/src/pull.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/pull.md Sun Jun 03 16:05:49 2018 +0200 @@ -2,7 +2,7 @@ title: 'dav-sync pull' --- -**`dav-sync pull [-cld] <directory>`** +**`dav-sync pull [-cldr] [-t <tags>] <directory>`** Pulls all changes from the server. All new or modified files are downloaded and all files deleted on the server are deleted locally. If a file is also locally modified and conflict detection is not disabled, the local file is renamed and an entry in the conflict database is added. @@ -16,4 +16,7 @@ **`-d`** Don't lock the repository (default) +**`-t <tags>`** Only sync files that match the tag filter expression +**`-r`** Delete files not matching the tag filter +
--- a/docs/src/push.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/push.md Sun Jun 03 16:05:49 2018 +0200 @@ -2,7 +2,7 @@ title: 'dav-sync push' --- -**`dav-sync push [-cld] <directory>`** +**`dav-sync push [-cldr] [-t <tags>] <directory>`** Pushes all local changes to the server. This uploads all locally modified files and deletes all locally deleted files on the server. @@ -14,3 +14,6 @@ **`-d`** Don't lock the repository (default) +**`-t <tags>`** Only sync files that match the tag filter expression + +**`-r`** Remove resources not matching the tag filter
--- a/docs/src/remove-tag.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/remove-tag.md Sun Jun 03 16:05:49 2018 +0200 @@ -0,0 +1,12 @@ +--- +title: 'dav-sync add-tag' +--- + +**`dav-sync remove-tag [-s <syncdir>] <file> <tag>`** + +Removes a tag from a SyncDirectory file. + +Tags must be enabled for the SyncDirectory. See [Configuration][1] for details. + +**`-s <syncdir>`** SyncDirectory for this file +
--- a/docs/src/set-tags.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/set-tags.md Sun Jun 03 16:05:49 2018 +0200 @@ -0,0 +1,13 @@ +--- +title: 'dav-sync add-tag' +--- + +**`dav-sync set-tags [-s <syncdir>] <file> [tags]`** + +Sets all tags for a SyncDirectory file. The *file* argument must be a normal file path. If multiple SyncDirectories contain this file, the SyncDirectory must be specified with the **`-s`** option. + +If no tags are specified, all tags are removed from this file. + +Tags must be enabled for the SyncDirectory. See [Configuration][1] for details. + +**`-s <syncdir>`** SyncDirectory for this file
--- a/docs/src/sync-configuration.md Sun Jun 03 14:40:07 2018 +0200 +++ b/docs/src/sync-configuration.md Sun Jun 03 16:05:49 2018 +0200 @@ -102,11 +102,13 @@ ### filter -With the filter element, include and exclude filters can be specified, to control which files are synchronized. The *pull* and *push* command apply these filters to file paths. At first it is checked if a file is matching any include filter. If so only files matching not an exclude filter are further processed. +With the filter element, include and exclude filters can be specified, to control which files are synchronized. The *pull*, *push* and *archive* command apply these filters to file paths. At first it is checked if a file is matching any include filter. If so only files matching not an exclude filter are further processed. + +It is also possible to filter resources by tags. Tags can dynamically be applied to individual files. The tag filter elements contains a tag filter expression. Only files that match the filter expression are synchronized. Note: The file path is relative to the directory path (and WebDAV collection) but always starts with an path separator. -Optional elements: `<include>`, `<exclude>` +Optional elements: `<include>`, `<exclude>`, `<tags>` ### include @@ -132,4 +134,15 @@ <exclude>\.DS_Store$</exclude> </filter> +### tags +TODO + +Type: tag filter expression \ +Example: + + <filter> + <!-- sync only resources that have one of this tags --> + <tags>| (tag1, tag2, tag3) + </filter> +