Sourcing R файлы в личной папке GitHub - PullRequest
0 голосов
/ 02 октября 2018

Я хочу поместить некоторый R-скрипт в личную папку github и сделать его доступным в некоторой среде через R.

При использовании общедоступной папки github обе эти команды выполняют свою работу: get_URL и source_url (от devtools).

Однако, когда папка является частной и требуется проверка подлинности, все усложняется.

Есть ли способ сделать это и поместить данные входа в эти функции, которые передадут имя пользователя& пароль автоматически, если для продвижения вперед требуется некоторое подтверждение github?

Спасибо заранее,

Тамас

1 Ответ

0 голосов
/ 17 апреля 2019

TL; DR: возможно, см. Приведенный ниже код.


Для использования в будущем кем-либо, вот метод для получения R-скрипта из частного репозитория Github, используяhttr и, опционально, devtools.

Я искал достаточно, чтобы найти различные части решения, и просто соединил их все вместе.Таким образом, кредит идет на несколько других потоков и веб-сайтов.

Некоторые источники здесь , здесь и здесь .

См.код ниже:

library(httr)

# Source R script from Github
script <-
  GET(
    url = "https://api.github.com/repos/{user_name}/{repo_name}/contents/{script_name}.R",
    authenticate({github_email}, {github_personal_access_token}),     # Instead of PAT, could use password
    accept("application/vnd.github.v3.raw")
  ) %>%
  content(as = "text")

# Evaluate and parse to global environment
eval(parse(text = script))

Это может работать только для частного репо, которым вы владеете.Я не уверен, что он будет работать для частного репо, которым вы поделились.

Смотрите эту ссылку , чтобы создать личный токен доступа Github (PAT).При желании вы также можете сохранить это как переменную окружения в R.devtools::github_pat() может быть полезно здесь.

Ваш адрес электронной почты и PAT (или пароль) должны быть в кавычках.

...