Git

【Git】「core.autocrlf」の値を編集する。

めも。

git config --global core.autocrlf input
# or
git config --global core.autocrlf true
#or
git config --global core.autocrlf false

的な感じ。

 

【Git】.gitattributesファイルとautocrlfの挙動メモ。

gitリポジトリからクローンした瞬間にファイルが「modified」になる現象でハマったので調べた。

「.gitattributes」が存在せず、「core.autocrlf」の値が「false」に設定されているリポジトリの場合。

  1. 改行コード「LF」のファイルを追加すると、改行コード「LF」のままコミットされる
  2. 改行コード「CRLF」のファイルを追加すると、改行コード「CRLF」のままコミットされる
  3. 改行コード「LF」のファイルをチェックアウトすると、改行コード「LF」のままチェックアウトされる
  4. 改行コード「CRLF」のファイルをチェックアウトすると、改行コード「CRLF」のままチェックアウトされる

「.gitattributes」が存在せず、「core.autocrlf」の値が「true」に設定されているリポジトリの場合。

  1. 改行コード「LF」のファイルを追加すると、改行コード「LF」のままコミットされる
  2. 改行コード「CRLF」のファイルを追加すると、改行コード「LF」でコミットされる
  3. 改行コード「LF」のファイルをチェックアウトすると、改行コード「CRLF」でチェックアウトされる
  4. 改行コード「CRLF」のファイルをチェックアウトすると、改行コード「CRLF」のままチェックアウトされる
  5. 改行コード「CRLF」のファイルをチェックアウトし、編集後コミットすると改行コード「CRLF」のままコミットされる

「.gitattributes」が存在しており「eol=crlf」が指定されている場合、「core.autocrlf」の値にかかわらず下記の挙動になる。

  1. 改行コード「LF」のファイルを追加すると、改行コード「LF」のままコミットされる
  2. 改行コード「CRLF」のファイルを追加すると、改行コード「LF」でコミットされる
  3. 改行コード「LF」のファイルをチェックアウトすると、改行コード「CRLF」でチェックアウトされる
  4. 改行コード「CRLF」のファイルをチェックアウトすると、改行コード「CRLF」のままチェックアウトされる
  5. 改行コード「CRLF」のファイルをチェックアウトし、編集後コミットすると改行コード「LF」でコミットされる

ああああああぁぁぁぁぁぁめんどくさいぃぃぃぃ!!!

めんどくさい変換とかしないでもうそのまんま扱ってくれれば十分だよ。
ってことで自分は「.gitattributes」を削除して「core.autocrlf」を「true」で安定。

 

【GIT】誤って削除したファイルを復元する(その2)。

以前の記事←に加えてメモ。

git checkout HEAD -- [消したファイル名]

 

【GIT】ファイルがコンフリクトした際の対処方法。

自分用まとめ。

■1, マージされたファイルを修正する。

1, コンフリクトしている部分を手動で修正する。

2, 修正したファイルを

git add .

3, 修正したファイルを

git commit

■2, マージ元を採用する(復元)。

git checkout --theirs .

※コンフリクトしたファイルを慌てて消してしまった場合などに有効。(自分はこれで助かった。)

■3, マージ先(ローカルなど)を採用する。

git checkout --ours .

【GIT】誤って削除したファイルを復元する。

ファイルを消してしまったなら、サーバーから復元すればいいじゃない!

ということで、復元したいファイルがあった場所まで移動して下記コマンドを実行すればOK。

git checkout .

うん。簡単。

 

【GIT】間違えてコミットしてしまったファイルを削除する。

めも。

■ファイルをコミット情報、リポジトリ双方から削除する

git rm hoge.txt

■コミット情報のみ削除する

git rm --cached hoge.txt

■ディレクトリ内すべてを対象とする

git rm -r --cached hoge_dir

 

【Git】よくつかうGitコマンドまとめ。

自分用まとめ。

コマンド 詳細
git status リポジトリの変更内容を表示する
git add . 現在地の全ファイル、フォルダをgit管理下に追加する
git add -u 削除したファイルをリポジトリからも削除する
git commit -a 変更されたファイルを自動検出しコミットする。ただし新規作成されたファイルはコミットされない
git commit -m “comment” コメントを指定してコミットする。左記の「comment」の部分にコメントを記入
git push マスターブランチにファイルをアップロードする