Как клонировать. git из GitHub в Google Drive с помощью скрипта Google Apps? - PullRequest
0 голосов
/ 19 апреля 2020

Я пишу скрипт Google Apps для резервного копирования всех моих репозиториев GitHub на Google Drive часто.

Для ответов JSON он работает нормально.

Для. git сам архив Я не нахожу никакого решения.

Моя цель - получить архив. git со всеми включенными ветками.

Моя последняя попытка:

const response = UrlFetchApp.fetch('https://' + accessToken + ':x-oauth-basic@github.com/' + repoFullName + '.git');
const content = response.getContentText();
DriveApp.createFile('Repository.git', content);

В результате скачанная HTML страница «страница не найдена» GitHub: - (

И:

const response = UrlFetchApp.fetch('http://github.com/' + repo.full_name + '/zipball/master/', { headers: { Authorization: 'token ' + accessToken } });
const content = response.getContent();
DriveApp.createFile('Repository.zip', content);

В результате архив, который macOS не может прочитать.

Есть идеи?

С наилучшими пожеланиями,

Денис

1 Ответ

1 голос
/ 19 апреля 2020

Спасибо за ваши идеи. Моя цель - сделать резервную копию всех проблем, комментариев, файлов и т. Д. c.

. Я решил проблему с загрузкой главной ветки в виде zip-файла следующим образом:

const gitFileResponse = UrlFetchApp.fetch('http://github.com/' + repo.full_name + '/zipball/master/', { headers: { Authorization: 'token ' + accessToken } })
const gitFileContent = gitFileResponse.getBlob()
gitFileContent.setContentTypeFromExtension() 
DriveApp.createFile(gitFileContent).setName('Master.zip')

: -)

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