def fetch(self):
        """
        Returns a tuple of the major version together with the
        appropriate SHA and dirty bit (for development version only).
        """
        if self._release is not None:
            return self

        self._release = self.expected_release
        if not self.fpath:
            self._commit = self._expected_commit
            return self

         # Only git right now but easily extended to SVN, Mercurial, etc.
        for cmd in ['git', 'git.cmd', 'git.exe']:
            try:
                self.git_fetch(cmd)
                break
            except EnvironmentError:
                pass
        return self
def fetch ( self ) : if self . _release is not None : return self self . _release = self . expected_release if not self . fpath : self . _commit = self . _expected_commit return self for cmd in [ 'git' , 'git.cmd' , 'git.exe' ] : try : self . git_fetch ( cmd ) break except EnvironmentError : pass return self
Returns a tuple of the major version together with the
        appropriate SHA and dirty bit (for development version only).