From dd69f828b6b34b72bf5c39f33b61535f485e574f Mon Sep 17 00:00:00 2001 From: risk danger olson Date: Tue, 5 Nov 2013 14:51:57 -0700 Subject: [PATCH] old, unused prototype scripts --- cmd/benchmark-git-media.go | 139 ------------------------------------- cmd/pre-commit.go | 57 --------------- 2 files changed, 196 deletions(-) delete mode 100644 cmd/benchmark-git-media.go delete mode 100644 cmd/pre-commit.go diff --git a/cmd/benchmark-git-media.go b/cmd/benchmark-git-media.go deleted file mode 100644 index 4f7d7c97..00000000 --- a/cmd/benchmark-git-media.go +++ /dev/null @@ -1,139 +0,0 @@ -package main - -import ( - "flag" - "fmt" - "io" - "os" - "os/exec" - "path/filepath" - "strings" - "time" -) - -var ( - ListFiles = flag.Bool("list", false, "List files only") - SourcePath = flag.String("s", "/Users/rick/github/github", "Location of existing Git repository") - DestPath = flag.String("d", "", "Location to setup benchmark repository") - Extensions = flag.String("ext", "", "Extensions to filter through git-media, separated by commas") - WorkingDir string -) - -func main() { - flag.Parse() - wd, _ := os.Getwd() - WorkingDir = wd - if *DestPath == "" { - *DestPath = filepath.Join(WorkingDir, "benchmark") - } - - os.Chdir(*SourcePath) - - if *ListFiles { - list(findfiles()) - } else { - bench(findfiles()) - } -} - -func list(files []string) { - for _, path := range files { - fmt.Println(path) - } -} - -func bench(files []string) { - os.MkdirAll(*DestPath, 0777) - os.Chdir(*DestPath) - - fmt.Println(safeExec("git", "init")) - - if *Extensions != "" { - fmt.Printf("Filtering extensions: %s\n", *Extensions) - gitattr, err := os.Create(filepath.Join(*DestPath, ".gitattributes")) - if err != nil { - fmt.Println("Error opening .gitattributes") - panic(err) - } - - for _, ext := range strings.Split(*Extensions, ",") { - gitattr.Write([]byte(fmt.Sprintf("*.%s\tfilter=media\n", ext))) - } - gitattr.Close() - - debugsuffix := " -debug 2> " + *DestPath + "/.git/media-debug.log" - fmt.Println(WorkingDir, filepath.Join(WorkingDir, "bin", "git-media-clean")) - safeExec("git", "config", "filter.media.clean", filepath.Join(WorkingDir, "bin", "git-media-clean"+debugsuffix)) - safeExec("git", "config", "filter.media.smudge", filepath.Join(WorkingDir, "bin", "git-media-smudge"+debugsuffix)) - } - - fmt.Printf("Copying %d files...\n", len(files)) - - for _, path := range files { - copyFile(path) - } - - fmt.Println("Adding to git...") - - started := time.Now() - if _, err := simpleExec("git", "add", "."); err != nil { - fmt.Printf("Error with git add: %s\n", err) - } - cmd, err := simpleExec("git", "commit", "-a", "-m", "benchmark") - dur := time.Since(started) - if err != nil { - fmt.Printf("Error with git add: %s\n", err) - } else { - fmt.Println(cmd) - } - fmt.Printf("Added in %s\n", dur.String()) -} - -func copyFile(path string) { - sourcepath := filepath.Join(*SourcePath, path) - destpath := filepath.Join(*DestPath, path) - - source, err := os.Open(sourcepath) - if err != nil { - return - } - - os.MkdirAll(filepath.Dir(destpath), 0777) - dest, err := os.Create(destpath) - if err != nil { - fmt.Printf("Error opening destination: %s\n", destpath) - panic(err) - } - - io.Copy(dest, source) - source.Close() - dest.Close() -} - -func findfiles() []string { - cmd := safeExec("git", "ls-tree", "HEAD", "-r") - lines := strings.Split(cmd, "\n") - files := make([]string, len(lines)-1) - - for i := range files { - pieces := strings.Split(lines[i], "\t") - files[i] = pieces[len(pieces)-1] - } - return files -} - -func simpleExec(name string, args ...string) (string, error) { - cmd, err := exec.Command(name, args...).Output() - if err != nil { - return "", err - } - return string(cmd), nil -} - -func safeExec(name string, args ...string) string { - str, err := simpleExec(name, args...) - if err != nil { - panic(err) - } - return str -} diff --git a/cmd/pre-commit.go b/cmd/pre-commit.go deleted file mode 100644 index 09176361..00000000 --- a/cmd/pre-commit.go +++ /dev/null @@ -1,57 +0,0 @@ -package main - -import ( - ".." - "fmt" - "os" - "path/filepath" - "strings" -) - -func main() { - wd, err := os.Getwd() - if err != nil { - panic(err) - } - - oid := latest() - bad := make(map[string]int64) - for _, filename := range changed(oid) { - check(wd, filename, bad) - } - - if numbad := len(bad); numbad > 0 { - fmt.Printf("%d bad file(s):\n", numbad) - for name, size := range bad { - fmt.Printf("%s %d\n", name, size) - } - } -} - -func check(working, filename string, bad map[string]int64) { - full := filepath.Join(working, filename) - stat, err := os.Lstat(full) - if err != nil { - fmt.Println(err.Error()) - os.Exit(1) - } - - if filesize := stat.Size(); int(filesize) > gitmedia.LargeSizeThreshold { - bad[filename] = filesize - } -} - -func changed(oid string) []string { - output := gitmedia.SimpleExec("git", "diff-index", "--name-only", oid, "-z") - files := strings.Split(output, "\x00") - return files[0 : len(files)-1] -} - -func latest() string { - if oid := gitmedia.SimpleExec("git", "rev-parse", "--verify", "HEAD"); oid != "" { - return oid - } - - // Initial commit: diff against an empty tree object - return "4b825dc642cb6eb9a060e54bf8d69288fbee4904" -}