aboutsummaryrefslogtreecommitdiffstats
path: root/_examples
diff options
context:
space:
mode:
Diffstat (limited to '_examples')
-rw-r--r--_examples/README.md5
-rw-r--r--_examples/clone/main.go1
-rw-r--r--_examples/log/main.go5
-rw-r--r--_examples/open/main.go1
-rw-r--r--_examples/progress/main.go1
-rw-r--r--_examples/push/main.go3
-rw-r--r--_examples/remotes/main.go7
-rw-r--r--_examples/showcase/main.go8
8 files changed, 29 insertions, 2 deletions
diff --git a/_examples/README.md b/_examples/README.md
index d027d50..d6f3e55 100644
--- a/_examples/README.md
+++ b/_examples/README.md
@@ -6,9 +6,10 @@ Here you can find a list of annotated _go-git_ examples:
- [showcase](showcase/main.go) - A small showcase of the capabilities of _go-git_
- [open](open/main.go) - Opening a existing repository cloned by _git_
- [clone](clone/main.go) - Cloning a repository
+- [log](log/main.go) - Emulate `git log` command output iterating all the commit history from HEAD reference
- [remotes](remotes/main.go) - Working with remotes: adding, removing, etc
-- [progress](progress/main.go) - Priting the progress information from the sideband
-
+- [progress](progress/main.go) - Printing the progress information from the sideband
+- [push](push/main.go) - Push repository to default remote (origin)
### Advanced
- [custom_http](custom_http/main.go) - Replacing the HTTP client using a custom one
- [storage](storage/README.md) - Implementing a custom storage system
diff --git a/_examples/clone/main.go b/_examples/clone/main.go
index bcdb6a9..27d043b 100644
--- a/_examples/clone/main.go
+++ b/_examples/clone/main.go
@@ -8,6 +8,7 @@ import (
. "srcd.works/go-git.v4/_examples"
)
+// Basic example of how to clone a repository using clone options.
func main() {
CheckArgs("<url>", "<directory>")
url := os.Args[1]
diff --git a/_examples/log/main.go b/_examples/log/main.go
index eded360..da856ac 100644
--- a/_examples/log/main.go
+++ b/_examples/log/main.go
@@ -8,6 +8,11 @@ import (
"srcd.works/go-git.v4/storage/memory"
)
+// Example of how to:
+// - Clone a repository into memory
+// - Get the HEAD reference
+// - Using the HEAD reference, obtain the commit this reference is pointing to
+// - Using the commit, obtain its history and print it
func main() {
// Clones the given repository, creating the remote, the local branches
// and fetching the objects, everything in memory:
diff --git a/_examples/open/main.go b/_examples/open/main.go
index 063c277..9174588 100644
--- a/_examples/open/main.go
+++ b/_examples/open/main.go
@@ -8,6 +8,7 @@ import (
. "srcd.works/go-git.v4/_examples"
)
+// Open an existing repository in a specific folder.
func main() {
CheckArgs("<path>")
path := os.Args[1]
diff --git a/_examples/progress/main.go b/_examples/progress/main.go
index 81546c3..6d68f84 100644
--- a/_examples/progress/main.go
+++ b/_examples/progress/main.go
@@ -7,6 +7,7 @@ import (
. "srcd.works/go-git.v4/_examples"
)
+// Example of how to show the progress when you do a basic clone operation.
func main() {
CheckArgs("<url>", "<directory>")
url := os.Args[1]
diff --git a/_examples/push/main.go b/_examples/push/main.go
index aaec5a3..809c26b 100644
--- a/_examples/push/main.go
+++ b/_examples/push/main.go
@@ -7,6 +7,8 @@ import (
. "srcd.works/go-git.v4/_examples"
)
+// Example of how to open a repository in a specific path, and push to
+// its default remote (origin).
func main() {
CheckArgs("<repository-path>")
path := os.Args[1]
@@ -15,6 +17,7 @@ func main() {
CheckIfError(err)
Info("git push")
+ // push using default options
err = r.Push(&git.PushOptions{})
CheckIfError(err)
}
diff --git a/_examples/remotes/main.go b/_examples/remotes/main.go
index 9537fea..06ffdd1 100644
--- a/_examples/remotes/main.go
+++ b/_examples/remotes/main.go
@@ -10,6 +10,13 @@ import (
"srcd.works/go-git.v4/storage/memory"
)
+// Example of how to:
+// - Create a new in-memory repository
+// - Create a new remote named "example"
+// - List remotes and print them
+// - Pull using the new remote "example"
+// - Iterate the references again, but only showing hash references, not symbolic ones
+// - Remove remote "example"
func main() {
// Create a new repository
Info("git init")
diff --git a/_examples/showcase/main.go b/_examples/showcase/main.go
index 7772d84..82c2acf 100644
--- a/_examples/showcase/main.go
+++ b/_examples/showcase/main.go
@@ -11,6 +11,14 @@ import (
. "srcd.works/go-git.v4/_examples"
)
+// Example of an specific use case:
+// - Clone a repository in a specific path
+// - Get the HEAD reference
+// - Using the HEAD reference, obtain the commit this reference is pointing to
+// - Print the commit content
+// - Using the commit, iterate all its files and print them
+// - Print all the commit history with commit messages, short hash and the
+// first line of the commit message
func main() {
CheckArgs("<url> <path>")
url := os.Args[1]