re: and the second top voted question on StackOverflow is... VIEW POST

TOP OF THREAD FULL DISCUSSION
re: thanks, and sorry for that section it was not clear indeed! Allow me to try again: As we have moved our HEAD one commit to the past, this means th...
 

So I tried to understand what tilde ~ symbol means in git and found a good article explains it.

git caret and tilde.

In short version, HEAD points to current commit, HEAD~1 points to one commit before(parent). HEAD~ is a shorthand for HEAD~1.

what the current commit is here?

Always HEAD points to the current commit.

If we have moved to the last but one commit isn't it the current commit?

Yes. Now HEAD points to the commit (which was last but one earlier)

It's like saying the current commit is the parent of itself.

No. Always HEAD~ points to the first parent commit.

The article explains the usage of ~ symbol a bit more.

code of conduct - report abuse