syncthing-stignore.5 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. .\" Man page generated from reStructuredText.
  2. .
  3. .TH "SYNCTHING-STIGNORE" "5" "Apr 24, 2020" "v1" "Syncthing"
  4. .SH NAME
  5. syncthing-stignore \- Prevent files from being synchronized to other nodes
  6. .
  7. .nr rst2man-indent-level 0
  8. .
  9. .de1 rstReportMargin
  10. \\$1 \\n[an-margin]
  11. level \\n[rst2man-indent-level]
  12. level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
  13. -
  14. \\n[rst2man-indent0]
  15. \\n[rst2man-indent1]
  16. \\n[rst2man-indent2]
  17. ..
  18. .de1 INDENT
  19. .\" .rstReportMargin pre:
  20. . RS \\$1
  21. . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
  22. . nr rst2man-indent-level +1
  23. .\" .rstReportMargin post:
  24. ..
  25. .de UNINDENT
  26. . RE
  27. .\" indent \\n[an-margin]
  28. .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
  29. .nr rst2man-indent-level -1
  30. .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
  31. .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
  32. ..
  33. .SH SYNOPSIS
  34. .INDENT 0.0
  35. .INDENT 3.5
  36. .sp
  37. .nf
  38. .ft C
  39. \&.stignore
  40. .ft P
  41. .fi
  42. .UNINDENT
  43. .UNINDENT
  44. .SH DESCRIPTION
  45. .sp
  46. If some files should not be synchronized to (or from) other devices, a file called
  47. \fB\&.stignore\fP can be created containing file patterns to ignore. The
  48. \fB\&.stignore\fP file must be placed in the root of the folder. The
  49. \fB\&.stignore\fP file itself will never be synced to other devices, although it can
  50. \fB#include\fP files that \fIare\fP synchronized between devices. All patterns are
  51. relative to the folder root.
  52. The contents of the \fB\&.stignore\fP file must be UTF\-8 encoded.
  53. .sp
  54. \fBNOTE:\fP
  55. .INDENT 0.0
  56. .INDENT 3.5
  57. Note that ignored files can block removal of an otherwise empty directory.
  58. See below for the (?d) prefix to allow deletion of ignored files.
  59. .UNINDENT
  60. .UNINDENT
  61. .SH PATTERNS
  62. .sp
  63. The \fB\&.stignore\fP file contains a list of file or path patterns. The
  64. \fIfirst\fP pattern that matches will decide the fate of a given file.
  65. .INDENT 0.0
  66. .IP \(bu 2
  67. Regular file names match themselves, i.e. the pattern \fBfoo\fP matches
  68. the files \fBfoo\fP, \fBsubdir/foo\fP as well as any directory named
  69. \fBfoo\fP\&. Spaces are treated as regular characters.
  70. .IP \(bu 2
  71. Asterisk matches zero or more characters in a filename, but does not
  72. match the directory separator. \fBte*st\fP matches \fBtest\fP,
  73. \fBsubdir/telerest\fP but not \fBtele/rest\fP\&.
  74. .IP \(bu 2
  75. Double asterisk matches as above, but also directory separators.
  76. \fBte**st\fP matches \fBtest\fP, \fBsubdir/telerest\fP and
  77. \fBtele/sub/dir/rest\fP\&.
  78. .IP \(bu 2
  79. Question mark matches a single character that is not the directory
  80. separator. \fBte??st\fP matches \fBtebest\fP but not \fBteb/st\fP or
  81. \fBtest\fP\&.
  82. .IP \(bu 2
  83. Characters enclosed in square brackets \fB[]\fP are interpreted as a character range \fB[a\-z]\fP\&. Before using this syntax you should have a basic understanding of regular expression character classes.
  84. .IP \(bu 2
  85. A pattern beginning with \fB/\fP matches in the root of the folder only.
  86. \fB/foo\fP matches \fBfoo\fP but not \fBsubdir/foo\fP\&.
  87. .IP \(bu 2
  88. A pattern beginning with \fB#include\fP results in loading patterns
  89. from the named file. It is an error for a file to not exist or be
  90. included more than once. Note that while this can be used to include
  91. patterns from a file in a subdirectory, the patterns themselves are
  92. still relative to the folder \fIroot\fP\&. Example:
  93. \fB#include more\-patterns.txt\fP\&.
  94. .IP \(bu 2
  95. A pattern beginning with a \fB!\fP prefix negates the pattern: matching files
  96. are \fIincluded\fP (that is, \fInot\fP ignored). This can be used to override
  97. more general patterns that follow.
  98. .IP \(bu 2
  99. A pattern beginning with a \fB(?i)\fP prefix enables case\-insensitive pattern
  100. matching. \fB(?i)test\fP matches \fBtest\fP, \fBTEST\fP and \fBtEsT\fP\&. The
  101. \fB(?i)\fP prefix can be combined with other patterns, for example the
  102. pattern \fB(?i)!picture*.png\fP indicates that \fBPicture1.PNG\fP should
  103. be synchronized. On Mac OS and Windows, patterns are always case\-insensitive.
  104. .IP \(bu 2
  105. A pattern beginning with a \fB(?d)\fP prefix enables removal of these files if
  106. they are preventing directory deletion. This prefix should be used by any OS
  107. generated files which you are happy to be removed.
  108. .IP \(bu 2
  109. A line beginning with \fB//\fP is a comment and has no effect.
  110. .IP \(bu 2
  111. Windows does not support escaping \fB\e[foo \- bar\e]\fP\&.
  112. .UNINDENT
  113. .sp
  114. \fBNOTE:\fP
  115. .INDENT 0.0
  116. .INDENT 3.5
  117. Prefixes can be specified in any order (e.g. “(?d)(?i)”), but cannot be in a
  118. single pair of parentheses (not “(?di)”).
  119. .UNINDENT
  120. .UNINDENT
  121. .sp
  122. \fBNOTE:\fP
  123. .INDENT 0.0
  124. .INDENT 3.5
  125. Include patterns (that begin with \fB!\fP) cause Syncthing to traverse and
  126. watch the entire directory tree regardless of other
  127. ignore patterns.
  128. .sp
  129. Top\-level include patterns are treated as special cases and will not force Syncthing to
  130. scan the entire directory tree. For example: \fB!/foo\fP is a top\-level include
  131. pattern, while \fB!/foo/bar\fP is not.
  132. .UNINDENT
  133. .UNINDENT
  134. .SH EXAMPLE
  135. .sp
  136. Given a directory layout:
  137. .INDENT 0.0
  138. .INDENT 3.5
  139. .sp
  140. .nf
  141. .ft C
  142. \&.DS_Store
  143. foo
  144. foofoo
  145. bar/
  146. baz
  147. quux
  148. quuz
  149. bar2/
  150. baz
  151. frobble
  152. My Pictures/
  153. Img15.PNG
  154. .ft P
  155. .fi
  156. .UNINDENT
  157. .UNINDENT
  158. .sp
  159. and an \fB\&.stignore\fP file with the contents:
  160. .INDENT 0.0
  161. .INDENT 3.5
  162. .sp
  163. .nf
  164. .ft C
  165. (?d).DS_Store
  166. !frobble
  167. !quuz
  168. foo
  169. *2
  170. qu*
  171. (?i)my pictures
  172. .ft P
  173. .fi
  174. .UNINDENT
  175. .UNINDENT
  176. .sp
  177. all files and directories called “foo”, ending in a “2” or starting with
  178. “qu” will be ignored. The end result becomes:
  179. .INDENT 0.0
  180. .INDENT 3.5
  181. .sp
  182. .nf
  183. .ft C
  184. \&.DS_Store # ignored, will be deleted if gets in the way of parent directory removal
  185. foo # ignored, matches "foo"
  186. foofoo # synced, does not match "foo" but would match "foo*" or "*foo"
  187. bar/ # synced
  188. baz # synced
  189. quux # ignored, matches "qu*"
  190. quuz # synced, matches "qu*" but is excluded by the preceding "!quuz"
  191. bar2/ # synced, despite matching "*2" due to child frobble
  192. baz # ignored, due to parent being ignored
  193. frobble # synced, due to "!frobble"
  194. My Pictures/ # ignored, matched case insensitive "(?i)my pictures" pattern
  195. Img15.PNG # ignored, due to parent being ignored
  196. .ft P
  197. .fi
  198. .UNINDENT
  199. .UNINDENT
  200. .sp
  201. \fBNOTE:\fP
  202. .INDENT 0.0
  203. .INDENT 3.5
  204. Please note that directory patterns ending with a slash
  205. \fBsome/directory/\fP matches the content of the directory, but not the
  206. directory itself. If you want the pattern to match the directory and its
  207. content, make sure it does not have a \fB/\fP at the end of the pattern.
  208. .UNINDENT
  209. .UNINDENT
  210. .SH AUTHOR
  211. The Syncthing Authors
  212. .SH COPYRIGHT
  213. 2014-2019, The Syncthing Authors
  214. .\" Generated by docutils manpage writer.
  215. .