I have set
git config --global core.filemode false
And checked that my config is ok with git config -l
...
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
core.autocrlf=false
...
But when I type git diff foo
I get this:
diff --git a/.gitignore b/.gitignore
old mode 100755
new mode 100644
diff --git a/Makefile b/Makefile
old mode 100755
new mode 100644
diff --git a/config.ini b/config.ini
old mode 100755
new mode 100644
...
I imported a remote repository inside mine with:
git remote add foo //192.168.1.42/foo/
git pull foo master
git checkout -b foo foo/master
git diff master
Where is my mistake?
From 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.
If you want to check your configuration settings, you can use the git config --list command to list all the settings Git can find at that point: $ git config --list user.name=John Doe user. [email protected] color. status=auto color.
Make sure you don't have multiple entries of that setting and set it locally instead of globally:
git config --global --unset-all core.filemode
git config --unset-all core.filemode
git config core.filemode false
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With