git diff: ファイルの差分, 最後にstageした後に何を変更したかの確認によく使う
git diff –staged, git diff HEAD
$ git diff
diff –git a/hello.txt b/hello.txt
index 05a682b..4a49d86 100644
— a/hello.txt
+++ b/hello.txt
@@ -1 +1,2 @@
-Hello!
\ No newline at end of file
+Hello!
+I am a student.
### 履歴の中で違いを見る
git diff コミット1 コミット2
git diff コミット1 コミット2 — ファイル
$ git diff 7aad1 HEAD
$ git diff HEAD^ HEAD
$ git diff HEAD~1 HEAD
$ git diff @^^ @
headは@とも書ける
### コミット情報の表示
git show: 直近のコミットがどんなものだったかを表示する
$ git show
### 一度ステージした内容を変更
ファイルに変更を追加してgit add -uなどとする
### ステージの内容を見る
$ git ls-files
詳細を見る場合は-sオプションをつける
$ git ls-files -s
$ git show a5842752b
### ステージしたことを無かったことにする
git reset
git reset –file
git reset –hard # ツリーの状態をHEADの上に戻す
$ git reset –hard
変更したものが、HEADの状態に戻る
### ステージした後の変更をなしにする
git checkout — file
$ git checkout — hello.txt
$ cat hello.txt
### ファイル名を変える
git mv 元のファイル 新しいファイル
### ファイルを管理下から外す
git rm ファイル
ステージだけから取り除き、作業ツリーにあるものは残したい場合 –cachedをつける
git rm –cached file
git rm -r –cached dir
### 昔のファイルをリポジトリから取り出す
$ git checkout HEAD~3 –hello.txt
チェックアウトせずに昔のファイルを見る
$ git show HEAD~3:hello.txt
$ git checkout HEAD~3 — hello.txt
$ git show HEAD~3:hello.txt
### 作業ツリーの内容をHEADの状態にする
$ git reset –hard
$ ls
### 最近の履歴を無かったものにする
$ git reset –hard コミット
$ git reset a82684a02
$ git log
### 直近のコミットをやり直す
$ git commit –amend
### gitにファイルを無視させる
.gitignoreを使う
*.log !test.log
$ git commit -m “8th commit”
使いながら覚えないとどうにもならんな これ…