GO-Github API : How To Commit and Push to a remote branch

标签 go

我正在尝试使用 Go-Github创建一个文本文件并将其推送到远程分支,但我完全不知道该怎么做。

我可以通过我的客户组织获得存储库列表

repos, _, err := client.Repositories.ListByOrg("MyOrg", nil)

我可以使用它并获得一个远程分支

branch, resp, err := client.Repositories.GetBranch("MyOrg", "MyRepository", "MyBranch")

但对于我来说,我无法弄清楚如何在我的本地分支中提交一个(或多个)文件并将提交推送到远程分支。

感谢任何人可以提供的帮助。

最佳答案

您需要一个不同的库(在您的本地存储库中):

  • 添加一个引用您的 GitHub 存储库的远程
  • 获取远程分支
  • 推送自己的分支。

参见“git library for Go”,喜欢libgit2/git2go项目(和 its push test )。

push, err := remote.NewPush()
checkFatal(t, err)
err = push.AddRefspec("refs/heads/master")
checkFatal(t, err)
err = push.Finish()
checkFatal(t, err)

关于GO-Github API : How To Commit and Push to a remote branch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26537304/

相关文章:

android - gomobile 回调(将实时下载的内容转发到 android)?

arrays - 解析 JSON 对象的 JSON 数组?

go - 从文件访问通过 POST 接收的 JSON

go - 在go中使用字符串通过名称实例化结构

Go - http Request.Write(),将长请求传递给 Writer 而不会被切断?

node.js - 我可以用 Nodejs 而不是 go 编写 kubernetes Controller 吗?

html - 如何在Go中使用struct中的数据生成html

go - 以tz数据库格式获取系统时区名称

go - 有没有办法从字符串创建结构的实例?

go - 不允许使用内部包