takenoko03の日記

PHP言語で仕事する

Gitを始めよう その3 何を変更したのかを確認しよう

 その2からの続きです。

 

 変更差分を確認する

git addする前の変更分

「git diff <ファイル名>」

 

git addした後の変更分

「git diff --staged」

 

git diffコマンドで起こっていること

 ターミナルでの作業

1.GitBushを開く。

2.「git diff」と入力。

変更が無いので何も表示されません。

 

3.VScodeを開く。

4.index.htmlを開く、3行目に「<p>git diff</p>」と入力。

 

5.保存してGitBushへ。

6.「git diff」と入力。

 

7.「git add index.html」と入力。(ステージに追加する)

8.「git diff」と入力。

ワークツリーとステージの内容が一致しているので、何も表示されません。

 

9.「git diff --stage」と入力。

 

10.「git commit」と入力し、エディタに「git diffを追記」と入力。

保存して終了する。

 

11.「git diff」と入力。

ステージとコミットの間で変更が無いので、何も表示されません。

 

 変更履歴を確認しよう

以前どのような変更があったのか、調べたいとき。

 

 変更履歴を確認する

「git log」コマンド(全ての変更履歴を表示)

 

おまけ

「git log --oneline」(要点を1行で表示)

「git log -p <ファイル名>」(ファイルの変更差分を表示)

「git log -n <コミット数>」最近の変更履歴だけを見たい

 

「git log」コマンドで起こっていること

 ターミナルでの作業

1.GitBashを開く、「cd ~/documents/udemy_code/git_tutorial」と入力し、ディレクトリを移動。

2.「git log」と入力。

最新から1つずつ古い情報へと、表示されます。

 

 ファイルの削除を記録しよう

「git rm <ファイル名>」(ファイルを削除)

「git rm -r <ディレクトリ名>」(ディレクトリを削除)

コミットされた記録もワークツリーの記録も削除されます。

 

「git rm --cached <ファイル名>」

リポジトリからは消すが、ワークツリーにはファイルを残したい場合。

 

 ターミナルでの作業

1.GitBashを開く、「cd ~/documents/udemy_code/git_tutorial」と入力し、ディレクトリを移動。

2.「ls」と入力。

index.htmlがあるのを確認します。

 

3.「git status」と入力。(変更状況を見る)

変更内容が無いので何も表示されません。

 

4.「git rm index.html」と入力。

index.htmlを削除したと表示されます。

 

5.「ls」と入力。

何も表示されない。=ワークツリーからindex.htmlが削除されました。

 

6.「git status」と入力。

リポジトリにあったindex.htmlが削除され、その削除された変更状態が、ステージに記録されています。

 

7.削除する前の状態に戻します。

「git reset HEAD index.html」と入力し、

「git checkout index.html」と入力。

 

8.「ls」と入力。

index.htmlが戻ってきています。

 

9.「git status」と入力。(変更内容が無いのを確認する)

 

10.「git rm --cached index.html」と入力。

 

11.「ls」と入力。

ワークツリーからはindex.htmlは削除されていません。

 

12.「git status」と入力。

リポジトリからindex.htmlが削除され、その変更状態がステージに記録されています。

 

13.「git reset HEAD index.html」と入力。(削除前の状態に戻る)

 

14.「git status」と入力し、変更が無いことを確認して終了です。