Update tagopt meaning in Git Remote Settings documentation
[TortoiseGit.git] / doc / source / en / TortoiseGit / tgit_dug / dug_settings_git.xml
blob25c912b4039260994ca913d516778d632ad9db1d
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!DOCTYPE sect2 SYSTEM "../../../dtd/dblite.dtd">\r
3 <sect2 id="tgit-dug-settings-git">\r
4         <title>Git</title>\r
5         <sect3 id="tgit-dug-settings-hierachical">\r
6                 <title>The hierarchical git configuration</title>\r
7                 <para>\r
8                         Git uses the concept of a hierarchical configuration (cf. <xref linkend="git-config(1)"/>). I.e. there are multiple levels; settings in higher levels override values in lower levels. The <guilabel>Effective</guilabel> tab shows you the effective values for the current scope (read-only).\r
9                 </para>\r
10                 <para>\r
11                         Select any level (e.g. <guilabel>Local</guilabel> - the current repository settings stored locally in .git/config, <guilabel>Project</guilabel> - settings for the current repository stored within the repository in /.tgitconfig, <guilabel>Global</guilabel> - settings for the current user, <guilabel>System</guilabel> - settings for all users of the system) to see the values stored there.\r
12                 </para>\r
13                 <para>\r
14                         In order to change settings select a level, enter the values, select where to store to and click on <guibutton>Apply</guibutton>.\r
15                 </para>\r
16                 <caution>\r
17                         <para>\r
18                                 If you want to inherit a value of a higher level don't leave a textbox empty (this means than an empty string will be stored, which might evaluate to <literal>true</literal>), select <guilabel>Inherit</guilabel> instead.\r
19                         </para>\r
20                 </caution>\r
21         </sect3>\r
22         <sect3 id="tgit-dug-settings-config">\r
23                 <title>Git Config</title>\r
24                 <?dbhh topicname="HIDD_SETTINGIT_CONFIG"?>\r
25                 <para>\r
26                         <figure id="tgit-dug-settings-git-config">\r
27                                 <title>The Settings Dialog, Git</title>\r
28                                 <graphic fileref="../images/SettingsGitConfig.png"/>\r
29                         </figure>\r
30                 </para>\r
31                 <para> Set git basic configuration </para>\r
32                 <para><guilabel>Name</guilabel> and <guilabel>Email</guilabel> are required for git to operate correctly.</para>\r
33                 <para> <guilabel>AutoCrlf</guilabel>\r
34                         If true, makes git convert CRLF at the end of lines in text files\r
35                         to LF when reading from the filesystem, and convert in reverse when\r
36                         writing to the filesystem. The variable can be set to input,\r
37                         in which case the conversion happens only while reading from\r
38                         the filesystem but files are written out with LF at the end of lines. \r
39                         A file is considered "text" (i.e. be subjected to the autocrlf mechanism) \r
40                         based on the file's crlf attribute, or if crlf is unspecified, \r
41                         based on the file's contents.\r
42                 </para>\r
43                 <para> <guilabel>SafeCrlf</guilabel>\r
44                         If true, makes git check if converting CRLF as controlled by core.autocrlf is reversible.\r
45                         Git will verify if a command modifies a file in the work tree either directly or indirectly. \r
46                         For example, committing a file followed by checking out the same file should yield the original file in the work tree. \r
47                         If this is not the case for the current setting of core.autocrlf, git will reject the file. \r
48                         The variable can be set to "warn", \r
49                         in which case git will only warn about an irreversible conversion but continue the operation.\r
50                 </para>\r
51                 <para> <guilabel>QuotePath</guilabel> Controls the <literal>core.quotepath</literal> setting which might be interesting when you have non ASCII filenames: See <xref linkend="git-config(1)"/>.</para>\r
52                 <important>\r
53                         <para>\r
54                                 If you have problems entering/storing data please see <xref linkend="tgit-dug-settings-hierachical"/>.\r
55                         </para>\r
56                 </important>\r
57         </sect3>\r
58         <sect3 id="tgit-dug-settings-remote">\r
59                 <title>Remote</title>\r
60                 <?dbhh topicname="HIDD_SETTINREMOTE"?>\r
61                 <para>\r
62                         <figure id="tgit-dug-settings-git-remote">\r
63                                 <title>The Settings Dialog, Git, Remote</title>\r
64                                 <graphic fileref="../images/SettingsGitRemote.png"/>\r
65                         </figure>\r
66                 </para>\r
67                 <para> Set git remote configuration </para>\r
68                 <para>\r
69                         <guilabel>Remote</guilabel>\r
70                         The name of the remote, usually the default one is called 'origin'.\r
71                 </para>\r
72                 <para>\r
73                         <guilabel>URL</guilabel>\r
74                         The URL of the remote. It can be http / https / ssh / git protocol or local file system.\r
75                         Note that for local file system, the path should use forward slash '/'; and\r
76                         for absolute path, use /C/Project1 for C:\Project1.\r
77                 </para>\r
78                 <para>\r
79                         <guilabel>Putty Key</guilabel>\r
80                         The putty key file to load when performing network operations.\r
81                 </para>\r
82                 <para>\r
83                         <guilabel>Tag</guilabel>\r
84                         This sets remote.name.tagopt config, which controls the default tag fetching behaviour of the specified remote.\r
85                         Reachable: Download tags that are reachable from remote branch heads (default behaviour).\r
86                         None: No tags are downloaded (--no-tags).\r
87                         (git 1.9 and later) All: All tags as well as branches are downloaded (--tags).\r
88                         (prior to git 1.9) All tags only: Only all tags are downloaded but no branches are downloaded (--tags).\r
89                 </para>\r
90                 <para>\r
91                         <guilabel>Prune</guilabel>\r
92                         This sets remote.name.prune config, which controls the default prune option of remote tracking branches of the specified remote.\r
93                         Default is false.\r
94                 </para>\r
95         </sect3>\r
96         <sect3 id="tgit-dug-settings-credential">\r
97                 <title>Credential</title>\r
98                 <?dbhh topicname="HIDD_SETTINCREDENTIAL"?>\r
99                 <para>\r
100                         <figure id="tgit-dug-settings-git-credential">\r
101                                 <title>The Settings Dialog, Git, Credential</title>\r
102                                 <graphic fileref="../images/SettingsGitCredential.png"/>\r
103                         </figure>\r
104                 </para>\r
105                 <para>Set simple credential helper configuration</para>\r
106                 <para>\r
107                         <guilabel>Advanced</guilabel>\r
108                         This is used if the credential helper configuration does not match any simple settings.\r
109                         If you choose other than Advanced, except the corrsponding credential.helper, all other config keys credential.* or credential.*.* are removed.\r
110                 </para>\r
111                 <para>\r
112                         <guilabel>None</guilabel>\r
113                         No credential config keys are in all config levels.\r
114                 </para>\r
115                 <para>\r
116                         <guilabel>wincred - this repository only</guilabel>\r
117                         wincred is enabled in local config.\r
118                         This option is visible only if wincred is installed.\r
119                 </para>\r
120                 <para>\r
121                         <guilabel>winstore - this repository only</guilabel>\r
122                         winstore is enabled in local config.\r
123                         This option is visible only if winstore is installed for current Windows user.\r
124                 </para>\r
125                 <para>\r
126                         <guilabel>wincred - current Windows user</guilabel>\r
127                         wincred is enabled in global config.\r
128                         This option is visible only if wincred is installed.\r
129                 </para>\r
130                 <para>\r
131                         <guilabel>winstore - current Windows user</guilabel>\r
132                         winstore is enabled in global config.\r
133                         This option is visible only if winstore is installed for current Windows user.\r
134                 </para>\r
135                 <para>\r
136                         <guilabel>wincred - all Windows users</guilabel>\r
137                         wincred is enabled in system config.\r
138                         This option is visible only if wincred is installed.\r
139                 </para>\r
140                 <para>Advanced credential helper configuration</para>\r
141                 <para>\r
142                         <guilabel>Config type</guilabel>\r
143                         Either Local, Global or System config.\r
144                 </para>\r
145                 <para>\r
146                         <guilabel>URL</guilabel>\r
147                         Define a context-specific configuration based on URL pattern. By default, the path component is not considered as a different context.\r
148                 </para>\r
149                 <para>\r
150                         <guilabel>Helper</guilabel>\r
151                         Select a credential helper program.\r
152                         wincred and winstore are predefined in TortoiseGit.\r
153                         It is possible to use other credential helpers or with extra options.\r
154                 </para>\r
155                 <para>\r
156                         <guilabel>Username</guilabel>\r
157                         A default username, if one is not provided in the URL. \r
158                 </para>\r
159                 <para>\r
160                         <guilabel>Use HTTP path component</guilabel>\r
161                         Also considers the path component of URL to match the configuration context.\r
162                 </para>\r
163                 <para>\r
164                         You can find more information at <xref linkend="gitcredentials(7)"/>.\r
165                 </para>\r
166         </sect3>\r
167 </sect2>