golang git 拉回购
golang git pulling a repo
我对 golang 很陌生
我正在尝试从 go 程序中执行 git pull。我查看了本机库并找到了 https://github.com/src-d/go-git/.
我有克隆等功能。但不拉。查看源代码似乎也有一个拉动功能
func (r *Repository) Pull(o *PullOptions)
但是编译器警告它未定义。任何人都可以指出我该怎么做或支持克隆和拉取的替代库吗?
您应该通过克隆存储库来创建存储库结构:
import {
git "gopkg.in/src-d/go-git.v4"
}
repo, err := git.Clone(memory.NewStorage(), nil, &git.CloneOptions{
URL: "https://github.com/src-d/go-siva",
})
然后在 repo 结构上调用 Pull。
err := repo.Pull(&git.PullOptions{
RemoteName: "origin"
})
您不能直接调用 git.Pull
。
gopkg.in/src-d/go-git.v4
不再维护建议使用 github.com/go-git/go-git
代替。参考 - https://pkg.go.dev/github.com/go-git/go-git
示例代码
import "github.com/go-git/go-git/v5"
_, err := git.PlainClone("/tmp/foo", false, &git.CloneOptions{
URL: "https://github.com/go-git/go-git",
Progress: os.Stdout,
})
我对 golang 很陌生 我正在尝试从 go 程序中执行 git pull。我查看了本机库并找到了 https://github.com/src-d/go-git/.
我有克隆等功能。但不拉。查看源代码似乎也有一个拉动功能
func (r *Repository) Pull(o *PullOptions)
但是编译器警告它未定义。任何人都可以指出我该怎么做或支持克隆和拉取的替代库吗?
您应该通过克隆存储库来创建存储库结构:
import {
git "gopkg.in/src-d/go-git.v4"
}
repo, err := git.Clone(memory.NewStorage(), nil, &git.CloneOptions{
URL: "https://github.com/src-d/go-siva",
})
然后在 repo 结构上调用 Pull。
err := repo.Pull(&git.PullOptions{
RemoteName: "origin"
})
您不能直接调用 git.Pull
。
gopkg.in/src-d/go-git.v4
不再维护建议使用 github.com/go-git/go-git
代替。参考 - https://pkg.go.dev/github.com/go-git/go-git
示例代码
import "github.com/go-git/go-git/v5"
_, err := git.PlainClone("/tmp/foo", false, &git.CloneOptions{
URL: "https://github.com/go-git/go-git",
Progress: os.Stdout,
})