git diff commit code example

Example 1: git diff two commits

-> git diff 0da94be  59ff30c > my.patch
-> git apply my.patch

Example 2: git diff of a file between two commits

git diff <branch_hash> <other_branch_hash> -- <file_path>

Example 3: git diff two commits one file

$ git diff HEAD^^ HEAD main.c
$ # show diff between HEAD(current commit) and HEAD^^(two commits back) for main.c

Example 4: diff from last commit

#For instance, to see the difference for a file "main.c" between now 
#and two commits back, here are three equivalent commands:

$ git diff HEAD^^ HEAD main.c
$ git diff HEAD^^..HEAD -- main.c
$ git diff HEAD~2 HEAD -- main.c

Example 5: how to compare two commits in git

$ git diff 012345..abcdef

Example 6: make diff git as commit

A simple way to do it is:

create and checkout branch tmp at branch_a (git branch tmp branch_a && git checkout tmp)
git reset --soft branch_b
git commit
that commit must have all the diff