Note about the "[VP]" prefix: this class just doesn't care. When the commit is first created,
external code will typically put prefix-less subject into this object. Only when
{@link VersionPress\Git\GitRepository::commit()} executes the commit itself will get the [VP] prefix.
On the other hand, when the commit is read from the repository and parsed back into this object,
it will typically have the [VP] prefix. It doesn't matter as VersionPress typically only
works with the commit body and its VP tags.
Rest of the commit message (all text except the subject). Usually
just the VP tags but body might also contain some other information.