2016-12-21 3 views
3

Я создаю API, который запускает отчеты о репозициях, которые моя компания ведет на GitHub. Одним из требований является список, когда отчеты были сделаны закрытыми от общественности. Я не уверен, имеет ли API эту функцию.API GitHub - найти, когда репо сделало приватным

Прежде всего, я не смог найти эту информацию даже вручную, когда я вошел в GitHub. Итак, из настроек или какого-либо другого раздела, есть ли способ увидеть, когда репо (из которого я являюсь участником) было закрыто?

ответ

1

GitHub не предоставляет информацию при изменении видимости репо.

Их API показывает только, является ли репо частным или нет, и то же самое относится к их обычным веб-сайтам. Изменения хороши, что они даже не отслеживают, когда состояние изменилось.

Однако журнал аудита в организации отслеживает изменения доступа. К сожалению, он недоступен в их API (пока?), Но вы можете экспортировать его как JSON или CSV на веб-сайте, так что вы, вероятно, можете притвориться пользователем и получить JSON журнала, а затем обработать его в своем скрипте.

Обновление: я только что проверил, и экспортированные версии журнала аудита идентичны, когда репо становится общедоступным и приватным; упоминает об этом только удобная для человека текстовая версия (не часть экспорта). Поэтому вам нужно будет проверить текущее состояние репо, чтобы узнать, была ли запись аудита в журнале аудита публично-частной или частной публичной.

+0

Спасибо за ваш ответ. Журнал аудита, который вы упомянули, доступен ли в Git? У меня есть доступ к репо, можете ли вы сказать мне, где я могу экспортировать журнал в GitHub? –

+0

Он доступен только в организациях, и я считаю, что вы должны быть Владельцем в организации, чтобы просмотреть журнал аудита. – ThiefMaster

+0

URL-адрес: 'https: // github.com/organization/XXX/settings/audit-log', а XXX - имя вашей организации (также доступно на странице * Настройки * организации) – ThiefMaster