HEAD^
If you place a ^ at the end of a reference, Git resolves it to mean the parent of that commit.
HEAD, which means “the parent of HEAD”:
通常ケースで言うとHEAD^は一個前のコミット、HEAD^は2つ前のコミットってことですね。他の書き方はHEAD~2、HEAD~5があります。
HEAD1、HEAD2
これは上記と若干違ってmergeのコミットに対してのみ有効です。
マージの場合はparentが2つあるので、HEAD1は今のブランチでのparent、HEAD^2は取得先のparentを差してます。