docs: def get_version(dunder_file):
      """Returns a version string for the current package, derived
      either from git or from a .version file.
  
      This function is expected to run in two contexts. In a development
      context, where .git/ exists, the version is pulled from git tags.
      Using the BuildPyCommand and SDistCommand classes for cmdclass in
      setup.py will write a .version file into any dist.
  
      In an installed context, the .version file written at dist build
      time is the source of version information.
  
      """
      path = abspath(expanduser(dirname(dunder_file)))
      try:
          return _get_version_from_version_file(path) or _get_version_from_git_tag(path)
      except CalledProcessError as e:
          log.warn(repr(e))
          return None
      except Exception as e:
          log.exception(e)
          return None