以下の内容はhttps://eel3.hatenablog.com/entry/2025/04/01/230000より取得しました。


Gitを0.7倍楽しむ方法

  1. 空のローカルリポジトリを用意する。
  2. core.autocrlffalseに設定する。
  3. 改行コードがCRLFのファイルをaddしてcommitする。ここではBOMなしUTF-8かつCRLFのhello.cを登録したと仮定する。
  4. .gitattributesをaddしてcommitする。中身は*.c text eol=crlf encoding=utf-8-dosとしておく。
  5. 手動でhello.cを削除した後に、git checkout .hello.cを復活させる。
  6. git statusgit diffなどでhello.cの状態を確認する。

よくよくgitattributesのドキュメントを読み解いてみれば、予期された挙動ではある気がするが……。

教訓 (1):.gitattributesを用いてテキストファイルの改行コードを細かく指定するならば、真っ先に.gitattributesリポジトリに登録しておくこと。

教訓 (2):やらかしてしまった場合には、以下の手順で対処すること。

  1. 一時的に.gitattributesを編集して改行コードの指定を無効化する。今回の例では*.c text eol=crlf encoding=utf-8-dosの行をコメントアウトすればよい(この変更はcommitしないでおく。)
  2. 問題となっているファイル(今回の例ではhello.c)の改行コードをLFに変換してcommitする。
  3. .gitattributesの内容を元に戻す。
  4. commitしたファイル(今回の例ではhello.c)を手動で削除した後、git checkout .などで復活させる。



以上の内容はhttps://eel3.hatenablog.com/entry/2025/04/01/230000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14