git rm --cached 後に git add -Aするとファイルのパーミッションが変わる
あるファイルを、
git rm --cached text.php
としてステージから削除したあとに、
git add -A
として、
git diff
とすると、
old mode 100644
new mode 100755
と出てきました。色々ぐぐって
[core]
filemode = false
をconfigに追加すればパーミッションの変更が無視されて対処できることはわかったのですが、根本的な理由がわからず下記2つについて教えてほしいです。
①なぜステージから削除→再度ステージにupをするとパーミッションが変わるのか
②パーミッションが644→755に変わったと表示されているのにファイル自体をls -l
でみてみると、パーミッションが-rw-r--r--
になっており、755になっていない
③git diffで
old mode 100644
new mode 100755
と出てしまっているものを削除したい
どうぞよろしくお願い致します。
[環境]
ゲストマシン:centOS6.6をvagrantで実行。
ホストマシン:macOS
で、vagrantの中身をmacOSから(vagrant sshせずに)phpstormをつかっていじっている、という環境です。