1<title>Fossil Settings</title>
2
3<h2>Using Fossil Settings</h2>
4
5Settings control the behaviour of fossil. They are set with the
6<tt>fossil settings</tt> command, or through the web interface in
7the Settings page in the Admin section.
8
9For a list of all settings, view the Settings page, or type
10<tt>fossil help settings</tt> from the command line.
11
12
13<h3>Repository settings</h3>
14
15Settings are set on a per-repository basis. When you clone a repository,
16a subset of settings are copied to your local repository.
17
18If you make a change to a setting on your local repository, it is not
19synced back to the server when you <tt>push</tt> or <tt>sync</tt>. If
20you make a change on the server, you need to manually make the change on
21all repositories which are cloned from this repository.
22
23You can also set a setting globally on your local machine. The value
24will be used for all repositories cloned to your machine, unless
25overridden explicitly in a particular repository. Global settings can be
26set by using the <tt>-global</tt> option on the <tt>fossil settings</tt>
27command.
28
29<h3>"Versionable" settings</h3>
30
31Most of the settings control the behaviour of fossil on your local
32machine, largely acting to reflect your preference on how you want to
33use Fossil, how you communicate with the server, or options for hosting
34a repository on the web.
35
36However, for historical reasons, some settings affect how you work with
37versioned files. These are <tt>allow-symlinks</tt>,
38<tt>binary-glob</tt>, <tt>crlf-glob</tt>, <tt>crnl-glob</tt>,
39<tt>empty-dirs</tt>, <tt>encoding-glob</tt>, <tt>ignore-glob</tt>,
40<tt>keep-glob</tt> and <tt>manifest</tt>. The most important is
41<tt>ignore-glob</tt> which specifies which files should be ignored when
42looking for unmanaged files with the <tt>extras</tt> command.
43
44Because these options can change over time, and the inconvenience of
45replicating changes, these settings are "versionable". As well as being
46able to be set using the <tt>settings</tt> command or the web interface,
47you can create versioned files in the <tt>.fossil-settings</tt>
48subdirectory of the check-out root, named with the setting name.
49The contents of the file is the
50value of the setting, and these files are checked in, committed, merged,
51and so on, as with any other file.
52
53Where a setting is a list of values, such as <tt>ignore-glob</tt>, you
54can use a newline as a separator as well as a comma.
55
56For example, to set the list of ignored files, create a
57<tt>.fossil-settings/ignore-glob</tt> file where each line contains a
58glob for ignored files.
59
60If you set the value of a setting using the <tt>settings</tt> command as
61well as a versioned file, the versioned setting will take precedence. A
62warning will be displayed.
63