Пытаться:
git config core.fileMode false
Из git-config (1) :
core.fileMode
Tells Git if the executable bit of files in the working tree
is to be honored.
Some filesystems lose the executable bit when a file that is
marked as executable is checked out, or checks out a
non-executable file with executable bit on. git-clone(1)
or git-init(1) probe the filesystem to see if it handles the
executable bit correctly and this variable is automatically
set as necessary.
A repository, however, may be on a filesystem that handles
the filemode correctly, and this variable is set to true when
created, but later may be made accessible from another
environment that loses the filemode (e.g. exporting ext4
via CIFS mount, visiting a Cygwin created repository with Git
for Windows or Eclipse). In such a case it may be necessary
to set this variable to false. See git-update-index(1).
The default is true (when core.filemode is not specified
in the config file).
-c
Флаг может быть использован для установки этой опции для разовых команд:
git -c core.fileMode=false diff
И --global
флаг сделает это поведение по умолчанию для вошедшего в систему пользователя.
git config --global core.fileMode false
Изменения глобального параметра не будут применены к существующим репозиториям. Кроме того, git clone
и в git init
явном виде установить core.fileMode
для true
в конфигурации репо , как описано в Git глобальной core.fileMode ЛОЖЬ переопределяется локально на клоне
Предупреждение
core.fileMode
это не лучшая практика и должна использоваться осторожно. Этот параметр охватывает только исполняемый бит режима и никогда не считывает / записывает биты. Во многих случаях вы думаете, что вам нужен этот параметр, потому что вы сделали что-то вроде chmod -R 777
, сделав все ваши файлы исполняемыми. Но в большинстве проектов большинство файлов не нужно и не должно быть исполняемым по соображениям безопасности .
Правильный способ решения такой ситуации - отдельно обрабатывать права доступа к папкам и файлам, например:
find . -type d -exec chmod a+rwx {} \; # Make folders traversable and read/write
find . -type f -exec chmod a+rw {} \; # Make files read/write
Если вы сделаете это, вам никогда не придется использовать core.fileMode
, кроме как в очень редких условиях.