1# -*- coding: utf-8 -*-
2
3# Copyright (c) 2004 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
4#
5
6"""
7Module defining configuration variables for the subversion package.
8"""
9
10# Available protocols for the repository URL
11ConfigSvnProtocols = [
12    'file://',
13    'http://',
14    'https://',
15    'svn://',
16    'svn+ssh://',
17]
18
19
20DefaultConfig = "\n".join([
21    "### This file configures various client-side behaviors.",
22    "###",
23    "### The commented-out examples below are intended to demonstrate",
24    "### how to use this file.",
25    "",
26    "### Section for authentication and authorization customizations.",
27    "[auth]",
28    "### Set password stores used by Subversion. They should be",
29    "### delimited by spaces or commas. The order of values determines",
30    "### the order in which password stores are used.",
31    "### Valid password stores:",
32    "###   gnome-keyring        (Unix-like systems)",
33    "###   kwallet              (Unix-like systems)",
34    "###   keychain             (Mac OS X)",
35    "###   windows-cryptoapi    (Windows)",
36    "# password-stores = keychain",
37    "# password-stores = windows-cryptoapi",
38    "# password-stores = gnome-keyring,kwallet",
39    "### To disable all password stores, use an empty list:",
40    "# password-stores =",
41    "###",
42    "### Set KWallet wallet used by Subversion. If empty or unset,",
43    "### then the default network wallet will be used.",
44    "# kwallet-wallet =",
45    "###",
46    "### Include PID (Process ID) in Subversion application name when",
47    "### using KWallet. It defaults to 'no'.",
48    "# kwallet-svn-application-name-with-pid = yes",
49    "###",
50    "### The rest of the [auth] section in this file has been deprecated.",
51    "### Both 'store-passwords' and 'store-auth-creds' can now be",
52    "### specified in the 'servers' file in your config directory",
53    "### and are documented there. Anything specified in this section ",
54    "### is overridden by settings specified in the 'servers' file.",
55    "# store-passwords = no",
56    "# store-auth-creds = no",
57    "",
58    "### Section for configuring external helper applications.",
59    "[helpers]",
60    "### Set editor-cmd to the command used to invoke your text editor.",
61    "###   This will override the environment variables that Subversion",
62    "###   examines by default to find this information ($EDITOR, ",
63    "###   et al).",
64    "# editor-cmd = editor (vi, emacs, notepad, etc.)",
65    "### Set diff-cmd to the absolute path of your 'diff' program.",
66    "###   This will override the compile-time default, which is to use",
67    "###   Subversion's internal diff implementation.",
68    "# diff-cmd = diff_program (diff, gdiff, etc.)",
69    "### Diff-extensions are arguments passed to an external diff",
70    "### program or to Subversion's internal diff implementation.",
71    "### Set diff-extensions to override the default arguments ('-u').",
72    "# diff-extensions = -u -p",
73    "### Set diff3-cmd to the absolute path of your 'diff3' program.",
74    "###   This will override the compile-time default, which is to use",
75    "###   Subversion's internal diff3 implementation.",
76    "# diff3-cmd = diff3_program (diff3, gdiff3, etc.)",
77    "### Set diff3-has-program-arg to 'yes' if your 'diff3' program",
78    "###   accepts the '--diff-program' option.",
79    "# diff3-has-program-arg = [yes | no]",
80    "### Set merge-tool-cmd to the command used to invoke your external",
81    "### merging tool of choice. Subversion will pass 5 arguments to",
82    "### the specified command: base theirs mine merged wcfile",
83    "# merge-tool-cmd = merge_command",
84    "",
85    "### Section for configuring tunnel agents.",
86    "[tunnels]",
87    "### Configure svn protocol tunnel schemes here.  By default, only",
88    "### the 'ssh' scheme is defined.  You can define other schemes to",
89    "### be used with 'svn+scheme://hostname/path' URLs.  A scheme",
90    "### definition is simply a command, optionally prefixed by an",
91    "### environment variable name which can override the command if it",
92    "### is defined.  The command (or environment variable) may contain",
93    "### arguments, using standard shell quoting for arguments with",
94    "### spaces.  The command will be invoked as:",
95    "###   <command> <hostname> svnserve -t",
96    "### (If the URL includes a username, then the hostname will be",
97    "### passed to the tunnel agent as <user>@<hostname>.)  If the",
98    "### built-in ssh scheme were not predefined, it could be defined",
99    "### as:",
100    "# ssh = $SVN_SSH ssh -q",
101    "### If you wanted to define a new 'rsh' scheme, to be used with",
102    "### 'svn+rsh:' URLs, you could do so as follows:",
103    "# rsh = rsh",
104    "### Or, if you wanted to specify a full path and arguments:",
105    "# rsh = /path/to/rsh -l myusername",
106    "### On Windows, if you are specifying a full path to a command,",
107    "### use a forward slash (/) or a paired backslash (\\\\) as the",
108    "### path separator.  A single backslash will be treated as an",
109    "### escape for the following character.",
110    "",
111    "### Section for configuring miscelleneous Subversion options.",
112    "[miscellany]",
113    "### Set global-ignores to a set of whitespace-delimited globs",
114    "### which Subversion will ignore in its 'status' output, and",
115    "### while importing or adding files and directories.",
116    "### '*' matches leading dots, e.g. '*.rej' matches '.foo.rej'.",
117    "global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc",
118    "  *.pyo .*.rej *.rej .*~ *~ #*# .#* .*.swp .DS_Store",
119    "  *.orig *.bak cur tmp __pycache__ .directory",
120    "  .ropeproject .eric6project",
121    "### Set log-encoding to the default encoding for log messages",
122    "# log-encoding = latin1",
123    "### Set use-commit-times to make checkout/update/switch/revert",
124    "### put last-committed timestamps on every file touched.",
125    "# use-commit-times = yes",
126    "### Set no-unlock to prevent 'svn commit' from automatically",
127    "### releasing locks on files.",
128    "# no-unlock = yes",
129    "### Set mime-types-file to a MIME type registry file, used to",
130    "### provide hints to Subversion's MIME type auto-detection",
131    "### algorithm.",
132    "# mime-types-file = /path/to/mime.types",
133    "### Set preserved-conflict-file-exts to a whitespace-delimited",
134    "### list of patterns matching file extensions which should be",
135    "### preserved in generated conflict file names.  By default,",
136    "### conflict files use custom extensions.",
137    "# preserved-conflict-file-exts = doc ppt xls od?",
138    "### Set enable-auto-props to 'yes' to enable automatic properties",
139    "### for 'svn add' and 'svn import', it defaults to 'no'.",
140    "### Automatic properties are defined in the section 'auto-props'.",
141    "# enable-auto-props = yes",
142    "### Set interactive-conflicts to 'no' to disable interactive",
143    "### conflict resolution prompting.  It defaults to 'yes'.",
144    "# interactive-conflicts = no",
145    "### Set memory-cache-size to define the size of the memory cache",
146    "### used by the client when accessing a FSFS repository via",
147    "### ra_local (the file:// scheme). The value represents the number",
148    "### of MB used by the cache.",
149    "# memory-cache-size = 16",
150    "",
151    "### Section for configuring automatic properties.",
152    "[auto-props]",
153    "### The format of the entries is:",
154    "###   file-name-pattern = propname[=value][;propname[=value]...]",
155    "### The file-name-pattern can contain wildcards (such as '*' and",
156    "### '?').  All entries which match (case-insensitively) will be",
157    "### applied to the file.  Note that auto-props functionality",
158    "### must be enabled, which is typically done by setting the",
159    "### 'enable-auto-props' option.",
160    "# *.c = svn:eol-style=native",
161    "# *.cpp = svn:eol-style=native",
162    "# *.h = svn:keywords=Author Date Id Rev URL;svn:eol-style=native",
163    "# *.dsp = svn:eol-style=CRLF",
164    "# *.dsw = svn:eol-style=CRLF",
165    "# *.sh = svn:eol-style=native;svn:executable",
166    "# *.txt = svn:eol-style=native;svn:keywords=Author Date Id Rev URL;",
167    "# *.png = svn:mime-type=image/png",
168    "# *.jpg = svn:mime-type=image/jpeg",
169    "# Makefile = svn:eol-style=native",
170    "",
171])
172
173
174DefaultIgnores = [
175    "*.orig",
176    "*.bak",
177    "cur",
178    "tmp",
179    "__pycache__",
180    ".directory",
181    ".ropeproject",
182    ".eric6project",
183]
184