Windows PCとMacでGitのフォルダを共有するには
Windows上で作業をし始めて気づいたんだけれども
既存のファイルでなにもしていないのにModifiedになっている
ものがある
MacからWindows PCへDropbox経由でファイルをコピーしたんだけれども
Dropbox経由だからといって勝手に改行コードが変わるってことはなさそう
考えてみるとこれは改行コードのせいではなかろうか
Macで作ったファイルは改行コードがLF
Windows側で作ったファイルは改行コードがCR+LF
それだけならファイルをコピーしただけで
ファイルがModifiedと思われることはないはずだけれども
Windows用のGitはデフォルトの設定でインストールすると
“Checkout as-is, commit Unix-style line endings”という
動きになっている
commitする前はどうかとは書いてないけれども
ファイルのステータスを判定するときにも何か影響しているんじゃないかと想像
ただし確かにそうだねというほどどうなってるかわかっているわけではない
もともと改行コードがLFだけなら影響受けなくてもいいんじゃないか
それに全部のファイルがModifiedになっているわけではないというのも
不思議なところ
Gitの自然な使い方としては直接ファイルを共有したりはしないで
どっかのリポジトリをそれぞれがcloneして持ってるっていうのが
自然なわけで
gitで管理するようなディレクトリはDropboxに入れないっていうのが
正しい気はするんだけれども
これはDropboxにバックアップがある、これはGitHubにある、みたいな
管理はできそうにないので、このままなんとか解決できないか
Gitが改行コードをへんにいじらないようにして
VS Codeはデフォルトの改行コードをLFにすればだいたい解決するかな?
ただVS Code自身はコントロールできても
たとえばPandocが出力するHTMLファイルの改行コードはCRLFだったりする
こういうところはPandoc依存だからPandocがそういうオプションでも
持っててくれないと面倒なことになる
Gitが改行コードを変更しないようにするには
以下のような設定を入れる
core.autocrlf=false
VS Codeの設定はこう
とりあえずWorkspace設定に入れたけど、グローバル設定にするのはどうかなあ
普通のWindowsファイルをいじるときにうっかりその設定で開いてしまうのも
いやだしなあ
"files.eol": "\n"
VS Codeの関連付けは外して、必ずWorkspaceから開くとか?
それも面倒だなあ
Workspace設定を毎回忘れずに入れるようにする、でいこうか
あとは運用してみて都度対処