project

package
v1.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2018 License: MIT Imports: 17 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// NoteNameSpace is the gtm git note namespace
	NoteNameSpace = "gtm-data"
	// GTMDir is the subdir for gtm within the git repo root directory
	GTMDir = ".gtm"
)

Variables

View Source
var (
	// ErrNotInitialized is raised when a git repo not initialized for time tracking
	ErrNotInitialized = errors.New("Git Time Metric is not initialized")
	// ErrFileNotFound is raised when record an event for a file that does not exist
	ErrFileNotFound = errors.New("File does not exist")
)
View Source
var (
	// GitHooks is map of hooks to apply to the git repo
	GitHooks = map[string]scm.GitHook{
		"post-commit": {
			Exe:     "gtm",
			Command: "gtm commit --yes",
			RE:      regexp.MustCompile(`(?s)[/:a-zA-Z0-9$_=()"\.\|\-\\ ]*gtm(.exe"|)\s+commit\s+--yes\.*`)},
	}
	// GitConfig is map of git configuration settings
	GitConfig = map[string]string{
		"alias.pushgtm":    "push origin refs/notes/gtm-data",
		"alias.fetchgtm":   "fetch origin refs/notes/gtm-data:refs/notes/gtm-data",
		"notes.rewriteref": "refs/notes/gtm-data"}
	// GitIgnore is file ignore to apply to git repo
	GitIgnore = "/.gtm/"
)

Functions

func Clean

func Clean(dr util.DateRange, terminalOnly bool) error

Clean removes any event or metrics files from project in the current working directory

func Initialize

func Initialize(terminal bool, tags []string, clearTags bool) (string, error)

Initialize initializes a git repo for time tracking

func LoadTags added in v1.2.1

func LoadTags(gtmPath string) ([]string, error)

LoadTags returns the tags for the project in the gtmPath directory

func Paths

func Paths(wd ...string) (string, string, error)

Paths returns the root git repo and gtm paths

func Uninitialize

func Uninitialize() (string, error)

Uninitialize remove GTM tracking from the project in the current working directory

Types

type Index added in v1.2.0

type Index struct {
	Projects map[string]time.Time
}

Index contains list of projects and their locations

func NewIndex added in v1.2.0

func NewIndex() (Index, error)

NewIndex initializes Index

func (*Index) Get added in v1.2.0

func (i *Index) Get(tags []string, all bool) ([]string, error)

Get finds projects by tags or all projects or the project in the current directory

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL