如何使用 PyGithub 创建新的存储库
How to create a new repository with PyGithub
如何在 Github 上使用 PyGithub 创建新的存储库?
我特别想知道如何使用 create_repo
方法?如何生成 AuthenticatedUser
?
要创建存储库,您可以使用 GitPython。 Here is a tutorial 关于如何初始化代表。就这么简单:
import git
repo_dir = os.path.join(rw_dir, 'my-new-repo')
file_name = os.path.join(repo_dir, 'new-file')
r = git.Repo.init(repo_dir)
您还可以使用 Dulwich 创建存储库:
from dulwich.repo import Repo
x = Repo.init("/path/to/new/repo")
完成后,您可以使用 PyGithub 访问存储库(或坚持使用上面提供的 API):
from github import Github
g = Github("user", "password")
for repo in g.get_user().get_repos():
print repo.name
我的问题的解决方案如下
g = Github(token)
user = g.get_user()
repo = user.create_repo(full_name)
我在试图弄清楚如何创建 AuthenticatedUser 对象时偶然发现了这个问题。事实证明,当您将任何参数传递给 get_user 时,您会得到一个 NamedUser,如果您不给它任何参数,您会得到与您在创建 Github 对象时使用的凭据相对应的 AuthenticatedUser。
下面是一个最小的例子:
from github import Github
g = Github("my GitHub API token")
user = g.get_user('myname')
print user
authed = g.get_user()
print authed
产量
<github.NamedUser.NamedUser object at 0x7f95d5eeed10>
<github.AuthenticatedUser.AuthenticatedUser object at 0x7f95d5684410>
获得 AuthenticatedUser 对象后,您可以按照链接的文档中的说明调用 CreateRepo。
我偶然发现了这个问题,试图找出如何诱使 PyGithub 在组织内创建存储库,并认为它与这里相关。
g = Github(token)
organization = g.get_organization("org-name")
organization.create_repo(
name,
allow_rebase_merge=True,
auto_init=False,
description=description,
has_issues=True,
has_projects=False,
has_wiki=False,
private=True,
)
可在此处找到完整的关键字参数集:https://developer.github.com/v3/repos/#input
问题答案:
通过令牌登录:
g = Github(token)
user = g.get_user()
repo = user.create_repo(repo_name)
print(repo)#To
通过用户名和密码登录:
g = Github("user", "password")
user = g.get_user()
repo = user.create_repo(repo_name)
print(repo)
Github 具有自定义主机名的企业。
登录到具有组织
的企业GitHub
g = Github(base_url="https://{hostname}/api/v3", login_or_token="token")
org = g.get_organization("org name")
repo = org.create_repo(repo_name)
如何在 Github 上使用 PyGithub 创建新的存储库?
我特别想知道如何使用 create_repo
方法?如何生成 AuthenticatedUser
?
要创建存储库,您可以使用 GitPython。 Here is a tutorial 关于如何初始化代表。就这么简单:
import git
repo_dir = os.path.join(rw_dir, 'my-new-repo')
file_name = os.path.join(repo_dir, 'new-file')
r = git.Repo.init(repo_dir)
您还可以使用 Dulwich 创建存储库:
from dulwich.repo import Repo
x = Repo.init("/path/to/new/repo")
完成后,您可以使用 PyGithub 访问存储库(或坚持使用上面提供的 API):
from github import Github
g = Github("user", "password")
for repo in g.get_user().get_repos():
print repo.name
我的问题的解决方案如下
g = Github(token)
user = g.get_user()
repo = user.create_repo(full_name)
我在试图弄清楚如何创建 AuthenticatedUser 对象时偶然发现了这个问题。事实证明,当您将任何参数传递给 get_user 时,您会得到一个 NamedUser,如果您不给它任何参数,您会得到与您在创建 Github 对象时使用的凭据相对应的 AuthenticatedUser。
下面是一个最小的例子:
from github import Github
g = Github("my GitHub API token")
user = g.get_user('myname')
print user
authed = g.get_user()
print authed
产量
<github.NamedUser.NamedUser object at 0x7f95d5eeed10>
<github.AuthenticatedUser.AuthenticatedUser object at 0x7f95d5684410>
获得 AuthenticatedUser 对象后,您可以按照链接的文档中的说明调用 CreateRepo。
我偶然发现了这个问题,试图找出如何诱使 PyGithub 在组织内创建存储库,并认为它与这里相关。
g = Github(token)
organization = g.get_organization("org-name")
organization.create_repo(
name,
allow_rebase_merge=True,
auto_init=False,
description=description,
has_issues=True,
has_projects=False,
has_wiki=False,
private=True,
)
可在此处找到完整的关键字参数集:https://developer.github.com/v3/repos/#input
问题答案:
通过令牌登录:
g = Github(token)
user = g.get_user()
repo = user.create_repo(repo_name)
print(repo)#To
通过用户名和密码登录:
g = Github("user", "password")
user = g.get_user()
repo = user.create_repo(repo_name)
print(repo)
Github 具有自定义主机名的企业。
登录到具有组织
的企业GitHubg = Github(base_url="https://{hostname}/api/v3", login_or_token="token")
org = g.get_organization("org name")
repo = org.create_repo(repo_name)