动机:
PyGithub 是一个很棒的库,但是一开始使用它可能并不直观。 不是每个人都是 Github API 专家,所以我试图提供一些工作示例(食谱),希望能帮助您入门。
框架已经在这里设置,示例文档已经像往常一样在 readthedocs 上发布:
https://pygithub.readthedocs.io/en/latest/examples.html
请注意,列表将扩大,非常欢迎任何 PR 添加更多示例😄
如果您想查看此处未涵盖的任何示例,请发表评论。
@sfdye请阅读登录示例^^_
我刚开始使用 PyGithub,并找到了一些示例,显然已经完成了一些工作——谢谢大家!
但是我没有看到任何关于如何侦听事件的示例,例如pushevent和pullrequestevent 。 可以添加这些示例吗?
谢谢,@LeviMatus!
此问题已自动标记为过时,因为它最近没有活动。 如果没有进一步的活动发生,它将被关闭。 感谢你的贡献。
这不是陈旧的
我现在正在编写组织示例
此问题已自动标记为过时,因为它最近没有活动。 如果没有进一步的活动发生,它将被关闭。 感谢你的贡献。
我是 PyGithub SDK 的新手并尝试执行以下操作。 但是,很难通过文档了解用法。
命令行等效:
git checkout <<branch>> and then get file content
问题:
我可以使用此 sdk 从 master 分支获取文件内容,但不能从特定分支获取
命令行等效:
git tag -v <<tag_id>>
我在这里看到文档https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
git config user.email "[email protected]"
git config user.name "cicd"
git commit --amend --reset-author --no-edit
git pull --no-edit
git add $FILE_NAME
git commit -m "updating $FILE_NAME"
git pull --no-edit && git push origin
我也在尝试找到这个 sdk 的方法/api来做到这一点,但如果有人准备好了,请帮忙做同样的事情。
此问题已自动标记为过时,因为它最近没有活动。 如果没有进一步的活动发生,它将被关闭。 感谢你的贡献。
你好,我是一个相对较新的开发人员,这很有帮助。 有人打算为 github 应用程序做例子吗? 谢谢!
我是 PyGithub SDK 的新手并尝试执行以下操作。 但是,很难通过文档了解用法。
- 从特定分支获取文件内容
命令行等效:
git checkout <<branch>> and then get file content
问题:
我可以使用此 sdk 从 master 分支获取文件内容,但不能从特定分支获取
- 回购标签及其详细信息
命令行等效:
git tag -v <<tag_id>>
- 更新那个文件
我在这里看到文档
https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
- 更新提交的用户详细信息
git config user.email "[email protected]" git config user.name "cicd" git commit --amend --reset-author --no-edit
- Git 在提交之前拉取该分支,因为其他自动化可能已经提交了一些其他文件。
- git commit 在分支中
git pull --no-edit git add $FILE_NAME git commit -m "updating $FILE_NAME" git pull --no-edit && git push origin
我也在尝试找到这个 sdk 的方法/api来做到这一点,但如果有人准备好了,请帮忙做同样的事情。
你好! 我也在尝试获取特定分支的内容。 你明白了吗? 谢谢!
@estagumor如果您仍然需要这个答案,关键是get_contents
函数中的ref 参数。 默认为“主”。 这是获取 scikit-learn 存储库“0.6.X”分支内容的示例。
from github import Github
g = Github("USERNAME", "PASSWORD")
repo = g.get_repo("scikit-learn/scikit-learn")
repo.get_contents("", ref = "0.6.X")
@sfdye我刚开始使用 PyGithub,效果很好。 但是,即使我熟悉 git api,如果您能提供一个如何设置创建/设置分支保护规则的工作示例,那就太好了。
我试过例如:
g.get_repo('SECRET/SECRET').get_branch('master').add_required_signatures()
@qbits-rwx 我认为你需要的方法是:
https://pygithub.readthedocs.io/en/latest/github_objects/Branch.html#github.Branch.Branch.edit_protection
https://developer.github.com/v3/repos/branches/#update -branch-protection
是的,这成功了。 不幸的是,需要签名提交,没有实现。 拥有它会很好,因为这是我们需要在每个分支上设置的策略。
随意发送 FR 或 PR
嘿,我正在查看拉取请求示例,有什么方法可以通过它的HTML
获取拉取请求吗? 或者是否有任何功能可以将 HTML URL 转换为 Github API 查询?
非常感谢这些例子! 我缺少的是一个异常处理的例子。 例如,我并不清楚如何捕捉github.GithubException.UnknownObjectException
。
最有用的评论
我现在正在编写组织示例