2013-07-08 3 views
11

Как создать новый репозиторий на github с помощью devtools в RStudio? Я пытался:Запустить новую разработку R-пакета на github

  1. Создать пустой репозиторий на GitHub под названием "MyNewRPackage"
  2. Начал новый проект в RStudio с помощью соединения SSH к моему репозиторию
  3. инсталлированы нагруженные DevTools

Тогда Я думал, что буду использовать create("MyNewRPackage") для инициализации структуры каталогов и файла README.md. Но скелет пакета создается как подпапка моего проекта, и у меня есть ~/MyNewRPackage/MyNewRPackage/R. Но мне нужно создать пакетный скелет в корневой папке моего репозитория github.

Каков стандартный способ запуска новой разработки R-пакета на github с помощью devtools и RStudio?

ответ

14

Надежда это помогает кому-то:

  1. Создать пустой репозиторий на github (я буду использовать имя rpackage в данном примере)
  2. Создать пакет локально с помощью DevTools, create("rpackage") (это создаст папку rpackage)
  3. Создать новый проект в RStudio (Создать проект из: Existing каталога) и выберите rpackage каталог
  4. В RStudio перейдите в меню Сервис/Shell ... и тип git init
  5. Переооткрытие проект (это освежит вкладку Git)
  6. Начало Git/More/Shell и введите

    git add *

    git commit -m "first commit"

    git remote add origin [email protected]:[username]/rpackage.git

    git push -u origin master

Затем вы можете обновить репозиторий на github. Теперь вы можете закрыть (или даже удалить) локальный проект и в следующий раз, когда вы можете начать новый проект Project/Новый проект/Управление версий/Git

+0

Я бы использовал 'git push -u origin master -force' – xhie

2

Вы можете указать путь к репозиторию GitHub в create вместо имени пакета:

create("/path/to/root/of/repository") 

Тогда нормальный мерзавец команды для добавления, фиксации и нажать на GitHub:

git commit -a -m "initial commit" * 
git push 
+0

Если я пытаюсь создать '("/ дом/ххх/MyNewRpackage")' я получаю: 'Ошибка: каталог уже exists'.Это верно, потому что я уже начал новый проект и вытащил пустой репозиторий из github. Должен ли я каким-то образом изменить порядок моих шагов? –

+2

Да, 'devtools: create' не будет топать по тому, что уже существует. – Spacedman

0

Теперь есть setup(), который создает скелет внутри существующий каталог. Вместе с hub, это становится:

git init NewPackage 
cd NewPackage 
Rscript -e "devtools::setup()" 
hub create 
git add . 
git commit -m "initial" 
git push -u origin HEAD