public function desiccate(Commit $commit)
{
$writer = new StringWriter();
$this->writeTree($commit->getTree(), $writer);
foreach ($commit->getParents() as $parent) {
$this->writeParent($parent, $writer);
}
$this->writeAuthor($commit->getAuthor(), $commit->getAuthorTime(), $writer);
$this->writeCommitter($commit->getCommitter(), $commit->getCommitTime(), $writer);
$writer->writeString8("\n");
$writer->writeString8($commit->getMessage());
return new RawObject('commit', $writer->toString());
}