Remember that Git's normal way of working is simply to reference some standalone commits as being "top of branches or tags". These commits, in turn, reference their fathers, thus the the history is built.
As long as a commit is referenced by "something", it is guaranteed to never disappear. This "something" could either be a tag, a branch, another commit or the reflog of a given branch. When it no longer is, however, Git will let its garbage collector scavenge everything that pends and is no longer useful. Also, before actually deleting something, Git will observe first a grace period, typically three months, before deciding it's really not worth preserving it.
So the right answer here would be: "don't care about these commits, they will eventually disappear by themselves".
However, if you can see them in a git log
result, as your screenshot seems to show, it's either because you're browsing a branch that still references them or because you're calling the explicit identifying hash sum of a given commit, even if it's not referenced anymore in itself.
In the former case, if what you want to do is actually remove some particular commits among a given branch, what you probably need is to rebase this branch using git rebase -i
to specify what's to be saved and discarded.
If you really want to kill them all right now and forever (for instance, because you've accidently pushed porn or some confidential informations), you may take a look at this entry. Keep in mind, though, that this will only clean up your local repository. If you have already pushed stuff somewhere, you'll need an access to the concerned machine.