code: func MatchesServerVersion(clientVersion apimachineryversion.Info, client DiscoveryInterface) error {
  	sVer, err := client.ServerVersion()
  	if err != nil {
  		return fmt.Errorf("couldn't read version from server: %v", err)
  	}
  	// GitVersion includes GitCommit and GitTreeState, but best to be safe?
  	if clientVersion.GitVersion != sVer.GitVersion || clientVersion.GitCommit != sVer.GitCommit || clientVersion.GitTreeState != sVer.GitTreeState {
  		return fmt.Errorf("server version (%#v) differs from client version (%#v)", sVer, clientVersion)
  	}
  
  	return nil
  }
docs: // MatchesServerVersion queries the server to compares the build version
  // (git hash) of the client with the server's build version. It returns an error
  // if it failed to contact the server or if the versions are not an exact match.