I was told that each git repo has different hashes - so how useful is it?
No, the revisions in the Gitlab master branch will have unique hash IDs and they persist in all local cloned copies.
The hash ID is useful but it needs a date after it IMO. The ID + date gives more information than a SVN revision number alone.
I don't know what idea Martin and others have about this.
Other mirrors or copies of the repository may have different hash IDs depending on how they were created.
For example I have used a local Git repo through git-svn link until now. It has very different IDs than the Lazarus mirror repositories in Github.
Any small change in some metadata or a commit message or anything changes the ID of that commit and every commit after it.
That is why we must not change the master branch history in any way.
Feature branches which will later be merged, can be rebased or otherwise modified if all people involved in its development agree.