Skip to content
Библиотека интеграции с GitHub
1C Enterprise
Branch: master
Clone or download
Pull request Compare This branch is 8 commits behind otymko:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

Взаимодейтсвие с API GitHub

Библиотека упрощает взаимодествие с GitHub API из OneScript.

Установка

OPM

В консоли выполняем:

opm install github

Из файла

Качаем последний релиз со страницы Релизы. Затем из командной строки:

opm install -f github*.ospx

Примеры

Авторизация

Авторизация выполняется по token github. Как получить токен можно почитать тут.

#Использовать github

Токен = "какой-то-токен";
Клиент = Новый КлиентGitHub(Токен);

Пользователь

Доступные поля:

  • Логин
  • Идентификатор
  • Ссылка
  • Имя
  • Компания
  • Местоположение
  • ЭлектроннаяПочта
  • Инфо
  • Репозиториев
  • Подписчиков
  • Подписок
  • ДатаСоздания
  • ДатаОбновления
ИмяПользователя = "mylogin";
Пользователь = Клиент.ПолучитьПользователя(ИмяПользователя);

или

ИмяПользователя = "mylogin";
Пользователь = Клиент.ПолучитьПользователя(Новый ПользовательGitHub(ИмяПользователя));

Организация

Достуные поля:

  • Логин
  • Идентификатор
  • Ссылка
  • Описание
  • Имя
  • Компания
  • Блог
  • Местоположение
  • ЭлектроннаяПочта
  • Подтверждено
  • Репозиториев
  • ДатаСоздания
  • ДатаОбновления
  • Разрешения (для репозиториев)
    • Администрирование
    • Отправка
    • Получение
ИмяОрганизации = "myorg";
Организация = Клиент.ПолучитьОрганизацию(ИмяОрганизации);

или

ИмяОрганизации = "myorg";
Организация = Клиент.ПолучитьОрганизацию(Новый ОрганизацияGitHub(ИмяОрганизации));

Репозиторий

Доступные поля:

  • Идентификатор
  • Имя
  • ПолноеИмя
  • Закрытий
  • Владелец
  • Ссылка
  • Описание
  • ЭтоФорк
  • ДатаСоздания
  • ДатаОбновления
  • ДатаПуша
  • СсылкаGit
  • СсылкаSSH
  • Размер
  • Язык
  • Лицензия
  • Форки
  • ВеткаПоУмолчания
  • Архивный
ИмяВладельца = "freeCodeCamp"; // пользователь или организация
ИмяРепозитория = "freeCodeCamp";
Репозиторий = Клиент.ПолучитьРепозиторий(ИмяВладельца, ИмяРепозитория);

или

Владелец = Новый ОрганизацияGitHub("freeCodeCamp");
ИмяРепозитория = "freeCodeCamp";
Репозиторий = Клиент.ПолучитьРепозиторий(Владелец, ИмяРепозитория);

или

Репозиторий = Клиент.ПолучитьРепозиторий(Новый РепозиторийGitHub("freeCodeCamp/freeCodeCamp"));

Сотрудники репозитория

Для получения сотрудников (collaborators) репозитория:

Владелец = "oscript-library";
Репозиторий = "add";
Сотрудники = Клиент.ПолучитьСотрудниковРепозитория(Владелец, Репозиторий);

В результате будет получен массив ПользовательGitHub с разрешениями.

Навигатор репозиториев

Для получения списка репозиториев пользователя / организации используется НавигаторРепозиториев.

Владелец = Клиент.ПолучитьОрганизацию(Новый ОрганизацияGitHub("oscript-library"));
Навигатор = Новый НавигаторРепозиториев(Владелец);
Результат = Навигатор.ПолучитьВесьСписок(Клиент);

Будет получен массив репозиториев (весь список).

Владелец = Клиент.ПолучитьОрганизацию(Новый ОрганизацияGitHub("oscript-library"));
Навигатор = Новый НавигаторРепозиториев(Владелец);
Пока Навигатор.ПолучитьСледующие() Цикл
    Сообщить(Навигатор.Репозитории.Количество());
КонецЦикла;

Для получения списка репозитория постранично.

Контент

Доступные поля:

  • Тип
  • Имя
  • Размер
  • Кодировка
  • Путь
  • Хеш
  • Ссылка
  • СсылкаДляСкачивания
Репозиторий = Новый РепозиторийGitHub("freeCodeCamp/freeCodeCamp");
Контент = Клиент.ПолучитьКонтент(Репозиторий, "readme");
You can’t perform that action at this time.