aboutsummaryrefslogtreecommitdiffstats
path: root/examples/showcase/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'examples/showcase/main.go')
-rw-r--r--examples/showcase/main.go62
1 files changed, 0 insertions, 62 deletions
diff --git a/examples/showcase/main.go b/examples/showcase/main.go
deleted file mode 100644
index e70de61..0000000
--- a/examples/showcase/main.go
+++ /dev/null
@@ -1,62 +0,0 @@
-package main
-
-import (
- "fmt"
- "os"
- "strings"
-
- "srcd.works/go-git.v4"
- "srcd.works/go-git.v4/plumbing/object"
-
- . "srcd.works/go-git.v4/examples"
-)
-
-func main() {
- CheckArgs("<url> <path>")
- url := os.Args[1]
- path := os.Args[2]
-
- // Clone the given repository, creating the remote, the local branches
- // and fetching the objects, exactly as:
- Info("git clone %s %s", url, path)
-
- r, err := git.PlainClone(path, false, &git.CloneOptions{URL: url})
- CheckIfError(err)
-
- // Getting the latest commit on the current branch
- Info("git log -1")
-
- // ... retrieving the branch being pointed by HEAD
- ref, err := r.Head()
- CheckIfError(err)
-
- // ... retrieving the commit object
- commit, err := r.Commit(ref.Hash())
- CheckIfError(err)
- fmt.Println(commit)
-
- // List the tree from HEAD
- Info("git ls-tree -r HEAD")
-
- // ... retrieve the tree from the commit
- tree, err := commit.Tree()
- CheckIfError(err)
-
- // ... get the files iterator and print the file
- tree.Files().ForEach(func(f *object.File) error {
- fmt.Printf("100644 blob %s %s\n", f.Hash, f.Name)
- return nil
- })
-
- // List the history of the repository
- Info("git log --oneline")
-
- commits, err := commit.History()
- CheckIfError(err)
-
- for _, c := range commits {
- hash := c.Hash.String()
- line := strings.Split(c.Message, "\n")
- fmt.Println(hash[:7], line[0])
- }
-}