Skip to content
go-libfossil Artifact [3259d2e30f]
Login

Artifact [3259d2e30f]

Artifact 3259d2e30f889b9c45e007fd8619d9f30e9bb54e845ae0a0b9e146776bd5d3fa:


package cli

import "fmt"

// RepoResolveCmd resolves a symbolic name to UUID and RID.
type RepoResolveCmd struct {
	Name string `arg:"" help:"Symbolic name, UUID, or prefix to resolve (e.g. trunk, tip, UUID prefix)"`
}

func (c *RepoResolveCmd) Run(g *Globals) error {
	r, err := g.OpenRepo()
	if err != nil {
		return err
	}
	defer r.Close()

	rid, err := resolveRID(r, c.Name)
	if err != nil {
		return err
	}

	var uuid string
	r.Inner().DB().QueryRow("SELECT uuid FROM blob WHERE rid=?", rid).Scan(&uuid)

	fmt.Printf("rid:  %d\n", rid)
	fmt.Printf("uuid: %s\n", uuid)
	return nil
}