2014-08-01 2 views
0

Я хочу прочитать файл из репозитория github в моем ruby-скрипте. Скажем, я хочу прочитать Gemfile из моего репо на github, URL, для которого будет выглядеть: «http://www.github.com/myrepo/blob/master/Gemfile».Прочтите файл github

Я пробовал использовать File.readLink("http://www.github.com/myrepo/blob/master/Gemfile"), но это дает мне сообщение об ошибке "'readlink': No such file or directory @ rb_readlink".

Как читать файл с использованием URL-адреса github?

+0

вы попробуйте открытого URI камень? – nickcen

+0

Да, я использовал драгоценный камень с открытым ури. Файл, который я получаю, находится в формате html. Есть ли способ получить содержимое в файле как есть, я имею в виду не в формате html? –

+0

О, я нашел то, что возвращал его в формате html. Игнорируй это. Вместо blob я должен был использовать raw. –

ответ

0

Вы должны попытаться извлечь содержимое из сырого GitHub файлов, таких как:

require 'net/http' 

uri = "https://raw.githubusercontent.com/username/myrepo/master/Gemfile" 
uri = URI(uri) 
file = Net::HTTP.get(uri) 
+0

С этим я получаю «инициализировать»: нет такого файла или каталога @ rb_sysopen ». –

+0

@techie_woman Извините, был занят и не тестировал код. Посмотрите обновленный ответ – RAJ

+0

Просто используйте [OpenURI] (http://www.ruby-doc.org/stdlib-2.1.2/libdoc/open-uri/rdoc/OpenURI.html): 'require 'под открытым небом «; file = open ("https://raw.githubusercontent.com/username/myrepo/master/Gemfile") .read'. OpenURI обрабатывает перенаправления, а Net :: HTTP - нет. –

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