2016-12-28 4 views
9

Как я могу экспортировать все мои проблемы из репозитория Enterprise GitHub в файл Excel? Я попытался найти ответы на многие ответы на переполнение стека, но не удалось. Я также пробовал это решение (exporting Git issues to CSV и получал ошибки «ImportError: No module named requests». Есть ли какой-либо инструмент или любой простой способ экспортировать все проблемы в Excel?Как я могу экспортировать проблемы GitHub в Excel?

+0

Вам необходимо будет использовать API для итерации по каждому репозиторию, для которого вы хотите экспортировать данные. Я бы предложил использовать ruby ​​[octokit] (https://github.com/octokit/octokit.rb) как быстрый способ взаимодействия с GitHub. Этот вопрос, как есть, будет, вероятно, опущен, если вы не сможете добавить больше кода или деталей того, что вы пробовали. – osowskit

ответ

6

Если это одноразовая задача, вы можете .. поиграйте с GitHub WebAPI Это позволяет экспортировать проблемы в формате JSON Затем вы можете преобразовать его в Excel (например, с помощью некоторых online converter)

Просто откройте следующий URL в браузере подставляя {owner} и {repo} с реальными значениями.:

https://api.github.com/repos/{owner}/{repo}/issues?page=1&per_page=100

+4

Попытка этого, он работает только для публичных репозиториев (дает «не найденную» ошибку для частных репозиториев). Он также не содержит комментариев, хотя он и говорит вам, сколько комментариев есть. – Jason

+0

@Jason Вы нашли способ загрузить комментарии и их приложения? –

+1

@NicolasMaltais комментарии доступны через APi, поэтому для этого будет конечная точка (подробнее здесь https://developer.github.com/v3/issues/comments/). Все вложения привязаны с помощью меток markdown, поэтому вам нужно проанализировать их, чтобы получить URL-адреса для вложений, и загрузить их отдельно. Если вы перестраиваете проблемы и комментарии где-то в другом месте, вам, вероятно, потребуется изменить эти URL-адреса, чтобы указать на новое хранилище вложений. – Jason

11

Для экспорта из частного репо с использованием локона, вы можете выполнить следующую команду:

curl -i "https://api.github.com/repos/<repo-owner>/<repo-name>/issues" -u "<user-name>"

Если пользователь имеет доступ к закрытому репо. Затем вы можете преобразовать полученный json в csv с помощью любого подходящего конвертера, как это предлагается в других ответах.

Найти аутентификацию here.

Смежные вопросы