protected static function checkVersion()
    {
        if (self::$checked === true) {
            return true;
        }

        $process = new \SystemProcess\SystemProcess('git');
        $process->nonZeroExitCodeException = true;
        $process->argument('--version')->execute();

        if (!preg_match('(\\d+(?:\.\\d+)+)', $process->stdoutOutput, $match)) {
            throw new \RuntimeException('Could not determine GIT version.');
        }

        if (version_compare($match[0], '1.6', '>=')) {
            return self::$checked = true;
        }

        throw new \RuntimeException('Git is required in a minimum version of 1.6.');
    }