Как получить частное хранилище GitHub (организация) с node.js

#node.js #github #pull #organization

Вопрос:

У меня есть частный репозиторий GitHub, принадлежащий организации. Я хочу автоматически вытащить репозиторий после нажатия на него. Веб-хук уже работает, и я получаю событие, но теперь я застрял на той части, где я вытаскиваю хранилище.

Как я могу извлечь частный репозиторий GitHub, принадлежащий организации, с помощью одной команды или с помощью пакета?

Я провел исследование на эту тему, однако мне не удалось найти решение.

Ответ №1:

 const util = require('util');
const exec = util.promisify(require('child_process').exec);

(async () => {
   const { stdout, stderr } = await exec('git pull https://<token>@github.com/<username>/your_repo.git', {cwd: '/path/to/your_repo'})
   console.log(stderr, stdout)
})()
 

Отсюда вы можете создать личный маркер доступа с разрешением на клонирование и извлечение:
https://github.com/settings/tokens

Комментарии:

1. Если он не сможет найти git, вы можете попробовать сослаться на git из своей папки bin или изменить оболочку в параметрах, таких как {оболочка: ‘powershell.exe’}