public function parseLogOutput($output, array $arguments = array())
    {
        if (!isset($arguments['--pretty=']) || Git::PRETTY_FORMAT !== $arguments['--pretty=']) {
            // non pretty results are not supported
            return $output;
        }

        $xml = '<log>' . $output . '</log>';

        $sxml = simplexml_load_string($xml);

        $retval = array();
        foreach ($sxml->logentry as $entry) {
            $revision = (string) $entry->commit;
            $date     = (string) $entry->date;
            $author   = (string) $entry->author;
            $message  = (string) $entry->msg;

            $retval[] = new Commit($revision, new \DateTime($date), $author, trim($message));
        }

        return $retval;
    }