从RStudio将Repo上传至Github

20

我喜欢使用github和RStudio来进行工作流程。最近,我创建了一个项目模板,可以生成目录和脚本等,并希望在本地创建好后上传到github。

过去,我会通过https://github.com/创建一个项目仓库,并在RStudio中使用版本控制来创建本地仓库,然后将所有已有的文件都放入其中。但这种方法似乎浪费时间。有没有一种方法可以直接将已经在RStudio中拥有.Rproj文件的目录/仓库上传至github而无需先在https://github.com/上创建空的仓库呢?

我认为这样做可以节省工作流程所需的时间。

我曾试图按照-此处-的指示(在给项目添加版本控制下面)来添加版本控制,但这并不能让我将其上传至github(也不应该,因为RStudio怎么知道你想要把代码推送到哪个git站点呢?)。


我不知道有没有绕过这个问题的方法。使用任何版本控制服务器(如github、gitolite等),在推送之前必须配置repo。使用像gitolite这样的工具,您可以在本地配置新的repo并将更改推送到服务器。我认为Github不允许以这种方式推送配置更改。 - Justin
2个回答

11
唯一的方法是直接从您的计算机在github上创建存储库,而无需先在其网站上创建它,是通过在系统上直接从git创建远程分支。这在某些git安装中是可能的,但在Github上不是可能的。
然而,Github提供了一个API,允许通过调用例如curl的命令行来创建存储库。您将在此答案中找到有关如何执行此操作的信息(未经测试):
curl -u 'USER:PASS' https://api.github.com/user/repos -d '{"name":"REPO"}'
git remote add origin git@github.com:USER/REPO.git
git push origin master

但我认为你无法直接从RStudio完成这个任务:你需要将项目置于版本控制下,然后在shell中执行答案中提供的三个命令。


2
这个很好用。我不得不在上面添加 git push -u origin master 来将所有东西推送到那里。我认为将其作为 RStudio 下拉菜单的一部分会很不错,但也许并没有真正的必要。 - Tyler Rinker

3

Have you seen hub?

hub create
git push -u origin master

一旦配置hub访问您的GitHub账户,它将为您完成工作。如果您想将项目名称与父目录的名称不同,则可以使用

hub create projectname

一般用法是:
hub create [NAME] [-p] [-d DESCRIPTION] [-h HOMEPAGE]

(-p -- 私有存储库),使用此工具可以访问更多的GitHub功能。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接