以前こんなツイートをしました。使い方を何となくわかる人はいるかもしれないけどこれだけじゃあまりイメージがわかないですよね。なので今回は詳細を書きましたので参考にしてみてください。
普段はプログラミングについて発信しています。 フォローする
【git diff コマンドの紹介】
— Tomoya🧑💻エンジニア (@div_tomo) August 29, 2023
コミットやステージに追加する前にどんな変更をしたのかを確認できるコマンドです。
▼git add する前の変更分を確認
> git diff
> git diff <ファイル名>
▼git add した後の変更分
> git diff --staged#プログラミング #駆け出しエンジニアと繋がりたい
変更差分を確認する
差分を確認するには git diff
コマンドを使用します。
git add する前の変更分
>_ コマンドライン
> git diff
> git diff <ファイル名>
特定のファイルの差分を確認したい時は git diff ファイル名
で特定ファイルを確認できます。
git add した後の変更分
>_ コマンドライン
> git diff --staged
—staged
はステージしたけどまだ、コミットしていない分の変更を確認できます。
git diff コマンドの使用方法
ワークツリーとステージの差分を確認するコマンドが git diff
ステージとリポジトリの差分を確認するコマンドが git diff —staged
変更した差分を確認
>_ コマンドライン
> git diff
今は何も変更していないので何も表示されません。
今回は index.html ファイルに変更を加えます。変更した状態でgit diff
コマンドを実行してみましょう。
>_ コマンドライン
> git diff
**diff --git a/index.html b/index.html
index 3b4659f..9b03591 100644
--- a/index.html
+++ b/index.html
@@ -1,2 +1,3 @@
<h1>test</h1>
-<p>変更を追加</p>
\ No newline at end of file
+<p>変更を追加</p>^M
+<p>git diff</p>
\ No newline at end of file**
+
と表示されている箇所が変更された箇所になります。
この変更をステージに追加して、git diff
コマンドを実行してみます。
>_ コマンドライン
> git add index.html
> git diff
ワークツリーとステージの間の変更差分なので git add
した後に git diff
をしても何も表示されません。
git diff —staged
でステージとコミットの差分を確認してみます。
>_ コマンドライン
> git diff --staged
diff --git a/index.html b/index.html
index 3b4659f..9b03591 100644
--- a/index.html
+++ b/index.html
@@ -1,2 +1,3 @@
<h1>test</h1>
-<p>変更を追加</p>
\ No newline at end of file
+<p>変更を追加</p>^M
+<p>git diff</p>
\ No newline at end of file
+
と表示されている箇所が変更された箇所になります。
次にコミットして、git diff —staged
でステージとコミットの差分を確認していきます。
>_ コマンドライン
> git commit -m "git diff を追記しました"
[master 3d72b8e] git diff を追記しました
1 file changed, 2 insertions(+), 1 deletion(-)
> git diff --staged
コミットした後なので、ステージとコミットの間には何の変更分も無いです。
実際に開発をする時は、なんの変更をしたかを確認してから git add , git commit する癖を付けましょう。