func (r *RemoteCache) Head(remote, vcs string) (commit, tag string, err error) {
	if vcs != "git" {
		return "", "", fmt.Errorf("could not locate recent commit in repo %q with unknown version control scheme %q", remote, vcs)
	}

	v, err := r.head.ensure(remote, func() (interface{}, error) {
		commit, err := r.HeadCmd(remote, vcs)
		if err != nil {
			return nil, err
		}
		return headValue{commit: commit}, nil
	})
	if err != nil {
		return "", "", err
	}
	value := v.(headValue)
	return value.commit, value.tag, nil
}
func (r *RemoteCache) Head(remote, vcs string) (commit, tag string, err error) {
	if vcs != "git" {
		return "", "", fmt.Errorf("could not locate recent commit in repo %q with unknown version control scheme %q", remote, vcs)
	}

	v, err := r.head.ensure(remote, func() (interface{}, error) {
		commit, err := r.HeadCmd(remote, vcs)
		if err != nil {
			return nil, err
		}
		return headValue{commit: commit}, nil
	})
	if err != nil {
		return "", "", err
	}
	value := v.(headValue)
	return value.commit, value.tag, nil
}
func ( r * RemoteCache ) Head ( remote , vcs string ) ( commit , tag string , err error ) { if vcs != " " { return " " , " " , fmt . Errorf ( " " , remote , vcs ) } v , err := r . head . ensure ( remote , func ( ) ( interface { } , error ) { commit , err := r . HeadCmd ( remote , vcs ) if err != nil { return nil , err } return headValue { commit : commit } , nil } ) if err != nil { return " " , " " , err } value := v . ( headValue ) return value . commit , value . tag , nil }
// Head returns the most recent commit id on the default branch and latest
// version tag for the given remote repository. The tag "" is returned if
// no latest version was found.
//
// TODO(jayconrod): support VCS other than git.
// TODO(jayconrod): support version tags. "" is always returned.
Head returns the most recent commit id on the default branch and latest version tag for the given remote repository . The tag is returned if no latest version was found . TODO ( jayconrod ) : support VCS other than git . TODO ( jayconrod ) : support version tags . is always returned .