github api - создать репо - PullRequest
3 голосов
/ 23 июля 2011

Я пытаюсь создать репо с помощью Github API, но он всегда возвращает этот JSON:

{"message":"Not Found"}

Но эта ошибка появляется только при попытке создать с помощью маркера доступа OAuth в заголовке запроса, еслиЯ использую имя пользователя и пароль, API создает репо и возвращает успешное сообщение.

У кого-нибудь были проблемы с этой конечной точкой API?

Ответы [ 5 ]

1 голос
/ 27 сентября 2016

Вы можете создать новый репозиторий, используя библиотеку Python, PyGithub .

from github import Github
g = Github("your username", "your password")
g = Github("your token")  # safer alternative, if you have an access token
u = g.get_user()
repo = u.create_repo("name-of-your-repo")

Это должно решить вашу проблему.

1 голос
/ 10 ноября 2012

У меня было другое сообщение с этим

curl -i -d '{"name":"NAME"}' https://api.github.com/orgs/:ORG/repos?access_token=XXX

{
  "message": "Must be an owner or admin of Organization."
}

Но все еще не уверен, почему я не могу создать либо

Ok

Это сработало для меня

Создать токен авторизации

curl -u 'iwarner' -d '{"scopes":["repo"],"note":":NAME"}' https://api.github.com/authorizations

Создать репо - необходимо содержать «Авторизация: токен»

curl -i -H 'Authorization: token TOKENHERE' -d '{"name":":NAME"}' https://api.github.com/user/repos
0 голосов
/ 10 февраля 2017

На сегодняшний день в документации API GitHub v3 прямо указано:

Создать

Создать новый репозиторий для аутентифицированного пользователя. (в настоящее время не включен для интеграций)

РЕДАКТИРОВАТЬ: «Не включен для интеграций» означает, если вы получите свой OAuth-токен через одно из ваших приложений OAuth (которое является «интеграцией»), GitHub API откажется создавать репозиторий с этой функцией.

Однако, если вы используете какой-то другой токен доступа (например, личный токен доступа , который вы добавляете сами, см. ниже), тогда GitHub API с радостью создаст для вас хранилище с тем же вызовом API.

curl -u your_username -d '{"scopes":["repo"], "note":"Description of personal token"}' https://api.github.com/authorizations

Именно поэтомуРешение, представленное работами Яна Уорнера.Решение с PyGithub будет иметь то же ограничение. Только маркер имеет значение!

РЕДАКТИРОВАТЬ: Не совсем верно: с OAuth вы можете указать scope прикрепить определенные разрешения к вашему токену OAuth при аутентификации (поток приложения OAuth).Для создания репозиториев вам необходимо иметь область действия 'repo'.(См. Также: Github v3 API - создайте РЕПО )

0 голосов
/ 06 апреля 2016

Я не знаю, какую технологию вы используете.Но только в случае с iOS вы можете использовать это демонстрационное приложение, которое описывает 3 простых способа взаимодействия с GitHub API.

Примечание. Это демонстрационное приложение предоставляет только несколько выбранных функций.

GitHub-Interaction

Надеюсь, это поможет !!

0 голосов
/ 23 июля 2011

Это работает, только что попробовал.

curl -F 'login=c00kiemon5ter' -F 'token=s3cr3t' https://github.com/api/v2/json/repos/create -F 'name=testapi' -F 'public=0'

Мы говорим об API v2 или v3 ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...