core.filemode may need manual action
core.filemode is set automatically when a repo is created. But when a repo is exported via CIFS or cygwin is mixed with Git for Windows or Eclipse core.filemode may better be set manually to false. Update and improve the documentation Helped-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Torsten Bögershausen committed
Oct 17, 2014 at 23:40 UTC
ecdab4126793194e7181afa967deaf8e805a09b9
1 file changed
+19
-6
Documentation/config.txt
+19
-6
@@ -204,13 +204,26 @@ advice.*::
204
--
205
206
core.fileMode::
207
- If false, the executable bit differences between the index and
208
- the working tree are ignored; useful on broken filesystems like FAT.
209
- See linkgit:git-update-index[1].
207
+ Tells Git if the executable bit of files in the working tree
208
+ is to be honored.
209
+
211
-The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
212
-will probe and set core.fileMode false if appropriate when the
213
-repository is created.
210
+Some filesystems lose the executable bit when a file that is
211
+marked as executable is checked out, or checks out an
212
+non-executable file with executable bit on.
213
+linkgit:git-clone[1] or linkgit:git-init[1] probe the filesystem
214
+to see if it handles the executable bit correctly
215
+and this variable is automatically set as necessary.
216
++
217
+A repository, however, may be on a filesystem that handles
218
+the filemode correctly, and this variable is set to 'true'
219
+when created, but later may be made accessible from another
220
+environment that loses the filemode (e.g. exporting ext4 via
221
+CIFS mount, visiting a Cygwin created repository with
222
+Git for Windows or Eclipse).
223
+In such a case it may be necessary to set this variable to 'false'.
224
+See linkgit:git-update-index[1].
225
++
226
+The default is true (when core.filemode is not specified in the config file).
227
228
core.ignorecase::
229
If true, this option enables various workarounds to enable