質問: false ``` をconfigに追加すればパーミッションの変更が無視されて対処できることはわかったのですが、根本的な理由がわからず下記2つについて教えてほしいです。 1なぜステージから削除→再度ステージにupをするとパーミッションが変わるのか 2パーミッションが644→755に変わったと表示されているのにファイル自体を`ls -l`でみてみると、パーミッションが`-rw-r--r--`になっており、755になっていない 3git diffで ``` old mode 100644 new mode 100755 ``` と出てしまっているものを削除したい どうぞよろしくお願い致します。 [環境] ゲストマシン:centOS6.6をvagrantで実行。 ホストマシン:macOS で、vagrantの中身をmacOSから(vagrant sshせずに)phpstormをつかっていじっている、という環境です。
回答: 自分も同じ現象を経験し、同じ方法で解決しました。 結局のところ、 Windowsから参照・変更・作成したファイルと、 Linuxから参照・変更・作成したファイルのパーミッションが違うから、 Windowsエディタで作成したファイルをコミットしてあったらリポジトリもそのパーミッションになるし、 Linuxで作成したファイルをコミットしてあったら(略 ということではないでしょうか。 localでcygwinでgitをいじっているということであれば、 windowsで編集したファイルは644になって、cygwinでコミットした時に755になる cygwinでcloneして、windowsで見るとwindows標準パーミッションと異なっているので> が付く。 windowsでコミットしてcygwinでgit commit -aすればfile modeが変更される ということですね。 うまく説明できなくてすみません。