使用 PyGithub 在 GitHub 存储库中创建文件

Create file in GitHub repository with PyGithub

我有以下代码:

import github

token = "my gitHub token"
g = github.Github(token)
new_repo = g.get_user().create_repo("NewMyTestRepo")

print("New repo: ", new_repo)

new_repo.create_file("new_file.txt", "init commit", "file_content ------ ")

我有 运行 这段代码,这是结果:

New repo:  Repository(full_name="myname/NewMyTestRepo")
Traceback (most recent call last):
  ...
  File "/home/serega/PycharmProjects/GitProj/myvenv/lib/python3.5/site-packages/github/Requester.py", line 180, in __check
    raise self.__createException(status, responseHeaders, output)
github.GithubException.UnknownObjectException: 404 {'message': 'Not Found', 'documentation_url': 'https://developer.github.com/v3'}

我认为我的令牌范围可能有问题,它有 repo 范围。尽管如此,我已经设法创建了一个 repo,所以看起来,应该允许在那个 repo 中使用新文件进行提交。

关于作用域我看到 link : https://developer.github.com/v3/oauth/#scopes

它指出:

repo
Grants read/write access to code, commit statuses, repository invitations, collaborators, and deployment statuses for public and private repositories and organizations.

如果有人能澄清所需令牌的范围,以及可能出现的问题,我将不胜感激。

repo 范围足以在存储库中创建文件。从 看来,问题是您的文件必须有一个前导斜杠:

new_repo.create_file("new_file.txt", "init commit", "file_content ------ ")