Linux と Windows ではファイルのパーミッションの扱いが異なるので、Linux で作成したスクリプトファイル(パーミッション: 0755
)を、Windows で git diff
すると、パーミッションが 0644
に変わっているという結果が出てしまったりします。
これを防ぐには、Windows 側の git config
で、core.filemode
を false
に設定します。
C:\> git config --global core.filemode false
うまくいかない場合は、ローカルスコープの設定(リポジトリごとの設定)で core.filemode
が true
になっている可能性があります。
以下のように一度設定をクリアしてから行うとうまくいくはずです。
C:\> git config --local --unset core.filemode