docs/src/sync-configuration.md

Sat, 20 Apr 2024 12:43:44 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sat, 20 Apr 2024 12:43:44 +0200
changeset 813
06cf17795b86
parent 700
165811ea12ab
permissions
-rw-r--r--

improve xattr code

- check allocation return value
- xattr_get returns null terminated strings

283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
1 ---
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
2 title: 'Configuration'
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
3 ---
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
4
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
5 The file `$HOME/.dav/sync.xml` is used for configuring sync-directories.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
6
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
7 The *sync.xml* file is an XML file with `<configuration>` as root element. This element can only have `<directory>` elements as children.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
8
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
9 ## directory
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
10
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
11 This element configures a sync-directory. A sync-directory must have a unique name, a (local) path, repository and a database.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
12
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
13 Required elements: `<name>`, `<repository>`, `<path>`, `<database>` \
700
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
14 Optional elements: `<collection>`, `<trash>`, `<max-retry>`, `<backup-on-pull>`, `<lock-pull>`, `<lock-push>`, `<lock-timeout>`, `<filter>`, `<metadata>`, `<versioning>`, `<splitconfig>`, `<symlink-intern>`, `<symlink-extern>`, `<tagconfig>`, `<allow-cmd>`
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
15
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
16 ### name
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
17
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
18 Unique sync-directory identifer. This identifer is used in combination with all *dav-sync* commands.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
19
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
20 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
21 Example: `<name>mysyncdir</name>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
22
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
23 ### repository
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
24
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
25 Name of the WebDAV-repository. A repository with the same name must be configured in [config.xml][1].
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
26
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
27 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
28 Example: `<name>myrepo</name>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
29
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
30 ### path
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
31
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
32 The path of the local directory that should be synchronized. The path must be an absolute path or start with an environment variable. A path with an environment variable must start with an `$` followed by the variable name optionally followed by a path. For example:
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
33
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
34 `<path>$HOME/Documents</path>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
35
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
36 The part between `$` and `/` is the environment variable name.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
37
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
38 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
39 Example: `<path>/absolute/path</path>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
40
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
41 ### database
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
42
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
43 Path to the database file used for this sync-directory. The path must be relative to the *$HOME/.dav/* directory.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
44
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
45 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
46 Example: `<database>myrepo-db.xml</database>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
47
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
48 ### collection
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
49
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
50 Path of the collection relative to the repository root collection. For example if the repository url is *http://example.com/webdav/* and the collection value is */myfiles/*, the directory is synchronized with *http://example.com/webdav/myfiles/*
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
51
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
52 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
53 Default: / \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
54 Example: `<collection>/myfiles</collection>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
55
700
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
56 ### hashing
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
57
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
58 Enables file hashing. The hash will be used for checking if files are modified and should be synchronized.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
59
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
60 Type: boolean \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
61 Default: false \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
62 Example: `<hashing>true</hashing>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
63
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
64 ### trash
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
65
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
66 Path to the trash directory for this sync-directory. Files that should be deleted will be moved to this directory. The value must be an absolute path or relative to the sync-directory path.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
67
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
68 Type: string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
69 Example: `<trash>.trash</trash>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
70
700
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
71 ### push-strategy
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
72
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
73 Controls the strategy *push* uses for deciding which files should be pushed. Possible values are: `metadata` and `hash`.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
74
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
75 Type: pushstrategy enum \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
76 Default: metadata
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
77 Example: `<push-strategy>hash</push-strategy>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
78
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
79 ### max-retry
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
80
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
81 This integer value controls how many attempts of downloading/uploading a file in case of an error are made.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
82
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
83 Type: integer \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
84 Default: 0 \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
85 Example: `<max-retry>3</max-retry>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
86
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
87 ### backup-on-pull
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
88
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
89 If this element has the value of true, the *pull* command will move old local files to the trash directory before downloading the new version from the server.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
90
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
91 Type: boolean \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
92 Default: false \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
93 Example: `<backup-on-pull>true</backup-on-pull>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
94
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
95 ### lock-pull
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
96
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
97 Enables locking for the *pull* command.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
98
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
99 Type: boolean \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
100 Default: false \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
101 Example: `<lock-pull>true</lock-pull>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
102
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
103 ### lock-push
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
104
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
105 Enables locking for the *push* command.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
106
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
107 Type: boolean \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
108 Default: false \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
109 Example: `<lock-push>true</lock-push>`
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
110
320
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
111 ### lock-timeout
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
112
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
113 Specifies the lock timeout in seconds. If the lock-timeout is 0, the client doesn't request a specific timeout and the server's default value is used. If the lock-timeout is -1, a infinite timeout is requested.
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
114
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
115 Type: integer \
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
116 Default: 0 \
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
117 Example: `<lock-timeout>50</lock-timeout>`
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 283
diff changeset
118
700
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
119 ### metadata
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
120
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
121 Controls which file metadata should be synchronized. Possible values are: `mtime`, `mode`, `xattr` and `all`. If this element is not specified, no metadata will be synchronized.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
122
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
123 Type: list of metadata \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
124 Example: `<metadata>mtime mode</metadata>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
125
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
126 ### versioning
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
127
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
128 Enables resource versioning for the commands *push* and *archive*.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
129
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
130 Possible attributes: `type`, `always`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
131
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
132 The attribute `type` sets the versioning method type. Possible values are `simple` and `deltav`. With *simple* versioning, resources are moved to a version history collection before the new content is uploaded. With *deltav*, the DeltaV methods *checkout* and *checkin* are used to store versions. The default value of the `type` attribute is `simple`.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
133
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
134 The boolean attribute `always` specifies if new versions should be always created. The default value is `false`.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
135
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
136 Optional elements: `<history>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
137 Example: `<versioning type="simple" always="true" />`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
138
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
139 ### history
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
140
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
141 Specifies the history collection path for *simple* versioning. The path is interpreted relatively to the root of the sync directory.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
142
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
143 Type: string \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
144 Default: `/.dav-version-history`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
145 Example:
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
146
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
147 <versioning type="simple">
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
148 <history>/.backup/</history>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
149 </versioning>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
150
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
151 ### symlink-intern
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
152
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
153 Configures the handling of symlinks, which have a target inside the sync directory. Possible values are: `sync`, `follow` and `ignore`.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
154
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
155 Type: symlink enum \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
156 Default: follow \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
157 Example: `<symlink-intern>sync</symlink-intern>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
158
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
159 ## symlink-extern
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
160
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
161 Configures the handling of symlinks, which have a target outside the sync directory. Possible values are: `follow` and `ignore`. Unlike internal symlinks, external symlinks cannot be synced.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
162
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
163 Type: symlink enum \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
164 Default: follow \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
165 Example: `<symlink-extern>ignore</symlink-extern>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
166
428
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
167 ### tagconfig
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
168
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
169 Configures the local store for resource tags. If this element is specified, resource tags are stored locally.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
170
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
171 Optional elements: local-store, detect-changes, xattr-name, on-conflict
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
172
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
173 ### local-store
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
174
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
175 Specifies the tag-store type. Currently the only available type is `xattr`.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
176
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
177 The element can contain the attribute `format` with one of the following values: `text`, `csv`, `xml`, `macos`. The default value is `text`.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
178
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
179 Type: tagstore type enum \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
180 Default: xattr \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
181 Example: `<local-store format="csv">xattr</local-store>`
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
182
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
183 ### xattr-name
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
184
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
185 Specifies the name of the extended attribute for storing tags. The default value is `tags`, unless you are using the `macos` format, where the default value is `com.apple.metadata:_kMDItemUserTags`.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
186
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
187 Type: string \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
188 Default: tags \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
189 Example: `<xattr-name>file_tags</xattr-name>
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
190
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
191 ### detect-changes
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
192
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
193 Controls, if tag changes should be detected.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
194
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
195 Type: boolean \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
196 Default: false \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
197 Example: `<detect-changes>true</detect-changes>`
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
198
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
199 ### on-conflict
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
200
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
201 Specifies the behavior, when tag conflicts occur. Possible values are: `no_conflict`, `keep_local`, `keep_remote`, `merge`
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
202
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
203 Type: onconflict enum \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
204 Default: no_conflict \
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
205 Example: `<on-conflict>merge</on-conflict>`
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
206
700
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
207 ### splitconfig
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
208
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
209 Parent element for all `<split>` elements.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
210
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
211 ### split
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
212
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
213 Configures if and how files should be splitted into multiple parts on *push*.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
214
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
215 The blocksize element configures the size of each part.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
216
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
217 The elements filter and minsize specify, in which case the files should be splitted.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
218
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
219 Required elements: `<blocksize>` \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
220 Optional elements: `<filter>`, `<minsize>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
221
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
222 Example:
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
223
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
224 <splitconfig>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
225 <!-- split all files with .vmdk file extension that are bigger than 100mb -->
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
226 <split>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
227 <blocksize>10m</blocksize>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
228 <filter>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
229 <include>\.vmdk$</include>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
230 </filter>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
231 <minsize>100m</minsize>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
232 </split>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
233 </splitconfig>
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
234
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
235 ### blocksize
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
236
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
237 Specifies the size of each file part.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
238
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
239 Type: size \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
240 Example: `<blocksize>100k</blocksize>`
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
241
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
242 ### minsize
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
243
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
244 Specifies the minimal size a file must have for enabling file splitting.
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
245
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
246 Type: size \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
247 Default: 0 \
165811ea12ab add documentation for all new config elements
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 428
diff changeset
248 Example: `<minsize>100m</minsize>`
428
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
249
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
250 ### filter
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
251
409
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
252 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.
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
253
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
254 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.
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
255
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
256 Note: The file path is relative to the directory path (and WebDAV collection) but always starts with an path separator.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
257
409
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
258 Optional elements: `<include>`, `<exclude>`, `<tags>`
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
259
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
260 ### include
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
261
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
262 Controls which files will be included by *pull* and *push*. If an include filter is specified, only files matching this filter are included.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
263
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
264 Type: regex string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
265 Default: .* \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
266 Example:
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
267
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
268 <filter>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
269 <include>\.pdf$</include>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
270 </filter>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
271
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
272 ### exclude
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
273
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
274 Controls which files will be excluded by *pull* and *push*.
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
275
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
276 Type: regex string \
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
277 Example:
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
278
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
279 <filter>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
280 <exclude>^/secretdir</exclude>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
281 <exclude>\.DS_Store$</exclude>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
282 </filter>
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
283
409
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
284 ### tags
283
0e36bb75a732 adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 273
diff changeset
285
428
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
286 Filters resources by tags. Only resources, that are not a collection, are effected. If tags are not stored locally, the pull command still uses the filter.
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
287
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
288 Filter Syntax:
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
289
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
290 filter ::= operator? , (tag_list | ("(" , filter , ")")+)
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
291 tag_list ::= tag , ("," tag)*
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
292 operator ::= "&" | "|" | "1" | "0"
409
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
293
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
294 Type: tag filter expression \
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
295 Example:
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
296
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
297 <filter>
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
298 <!-- sync only resources that have one of this tags -->
428
b50ade8e7197 adds documentation for tag config
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 409
diff changeset
299 <tags>| (tag1, tag2, tag3)</tags>
409
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
300 </filter>
90a6d6952d83 adds documentation for new dav-sync features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
301

mercurial