【推荐】在R中无缝集成Github云端代码托管

640?wx_fmt=gif


作者简介:

祝小宇,R语言中文社区专栏作者,个人公众号:大猫的R语言课堂


前期推荐:

还在用tm?你OUT啦!



题提出

由于需要兼顾数据处理以及平时出门的需要,大猫会用到多台设备:实验室一台96G内存的服务器、自己的一台32G内存+1T SSD的地球人笔记本,还有一台i5 8G Surface Pro。平时出门去图书馆只带Surface,一些轻便的任务也在Surface上完成,需要处理繁重的数据就在实验室的机器上跑;如果在外地或者国外并且远程连不上实验室,那么就把地球人作为移动工作站放在住的公寓,出门仍旧带Surface。这时问题就出现了:由于同一个R项目需要在多台设备之间切换,如何保持代码的同步呢?总不能复制粘贴吧?而且我们希望不同设备的修改都能生成历史记录,这样一旦出错我们也有“后悔药”可吃。


解决以上问题的最好方法就是使用统一的云代码托管平台Github。Github是当前最大(也可以说是唯一,因为实在没有竞争对手)的免费代码托管平台,可以轻松实现代码的同步以及团队协作编程。由于R本身不包含任何Github的支持插件,因此我们就需要借助IDE的功能来实现Github同步。在这里大猫将向大家介绍如何使用Visual Studio——这个星球上最强大的IDE——所集成的Github功能来实现这个功能。当你掌握了这个方法,你会发现多设备同步编程是一件多么轻松的事情。


V

isual Studio安装

VS的安装非常简单,首先到官网visualstudio.com上下载免费的Community版本安装文件。双击后系统会提示你需要安装的组建,如果我们只是要进行R编程以及Github同步的话,我们只要选择以及“R language support", "Git for Windows"以及“Gibhub Extension”三种就行,如下图所示。整个安装过程根据机器的配置可能持续10到20分钟不等。


640?wx_fmt=png



立你的Github主页!

为了能使用Github,第一步自然是要建立一个Github账号。在github.com官网注册完之后会生成一个自定义的个人主页,用户所有托管的代码都会显示在这个主页上。大猫的个人主页是:


github.com/XiaomoWu



大家可以发现,XiaomoWu就是自定义的部分,大家可以把它设置为你的名字或者团队名字等任何合法字符。以下就是大猫的个人主页,目前有SNT(大猫的博士论文代码)CrawlerMainR-Play以及HedgeFund四个项目。


640?wx_fmt=png



Visual Studio中建立Github项目

在VS中使用Github可以说是一件轻松加愉快的事情,几乎不需要任何多余的设置。点击“新建”,选择新建项目的类型为R,最重要的是勾上“Create new Git repository”这个选项。如果不勾这个选项,那么将来建立的项目就只能在本地使用,无法与Github同步了。在这里我们新建一个项目,名称就叫“Damao”


640?wx_fmt=png


在Damao这个项目中,大猫新建了两个脚本和dt、dt2两个数据集,并且用内置的浏览器同时打开这两个数据集。如下:

640?wx_fmt=png


建立完项目后,接下来的任务就是要把我们的R代码上传到云端了!首先,我们需要commit我们对当前项目的修改。大家可以把Commit看作对代码的“快照”,我们每一次commit,就相当于为当前项目拍了张照,而Github保存的就是这些“快照”。重要的是,所有这些“快照”的历史都是可追溯的,也就是说,我们可以回到任何之前commit的版本,编程终于有后悔药可以吃了!


为了commit,我们点击右下角的笔装图标。

640?wx_fmt=png


在弹出窗口中,我们可以看到自从上次commit以来我们对项目所做的所有变化。在“change”列表中,我们可以看到我们新建了一个叫做01-test.R的脚本和一个叫做02-empirical.R的脚本,并且删除了一个叫做Script.R的脚本。大猫还对于本次commit做了一个批注:Welcome to Damao's R Course! 点击Commit All,完成!

640?wx_fmt=png



VS代码上传至Github

点击右下角的“向上”箭头(见前图),我们就打开了代码同步页面。我们可以看到VS给了我们三种同步方式:


1)同步至微软自己的代码托管平台Team Services,

2)同步至Github,

3)同步至其他远程仓库。


在这里我们点击“Publish to Github”。然后输入自己的Github账号密码。Github允许我们为上传的项目写一个简介,大猫写的是“欢迎大猫课堂的小伙伴!”。OK,点击“Publish”上传!


PS:上传窗口有个Private Repository选项,意思是上传的代码别人看不到。Github上的所有代码默认是所有人可见的,如果需要私人可见,需要……交钱╮(╯▽╰)╭

640?wx_fmt=png


上传成功后,我们就可以对本地代码和远程代码进行一系列操作了,包括修改、同步、创建分支等等。下图展示了我们可以的进行的操作。

640?wx_fmt=png


我们从上图可以看到上传的项目地址是


github.com/XiaomoWu/Damao



让我们访问一下这个页面吧!这个页面所有小伙伴都可见哦。

640?wx_fmt=png



其他机器上同步Github项目

在另外一台机器上同步我们的Github项目同样非常简单。打开VS后我们在欢迎页可以看到“Open”标签,其中就有从Github的选项,点击。

640?wx_fmt=png


登陆Github后,VS会让我们从现有的代码仓库中选择一个项目进行同步。在这里我们选择“Damao”这个项目,并且指定好路径,最后点击Clone!

640?wx_fmt=png


根据网速,几秒至几分钟之后,我们的Github项目就完美同步下来了!接下来就开始打鸡血干活吧!


使

用技巧

在已经登陆Github的情况下,多设备之间进行编程切换是非常方便的。例如,白天在实验室的电脑上写程序,下班时上传至Github,回寝室以后直接点击刷新(Github在VS上不需要重复登陆)就可以在自己的笔记本上继续工作。又或者你对程序进行了修改并上传,远在国外的朋友就可以直接下载你的Github文档继续开发。


其实,Github除了云端代码托管,最大的魅力在于继承了Git版本控制系统。Git是一剂后悔药,可以让你回到过去代码编写的任何阶段。但是Git本身是一个太大的话题,大猫在这儿只能略微带过,感兴趣的小伙伴可以看Github的tuturiol文件,里面有很详细的介绍。


VS作为这个星球上最强大的IDE,对于Git和Github有着非常优秀的支持。在这里大猫就再举一例子。有时我们需要比较两个版本的代码,例如本地版本与云端版本,使用VS的compare功能可以自动高亮出所有修改,让所有变动一目了然。下图就是一个大猫实际编程中遇到的例子。左边是云端版本,右边是本地已经修改但是还没上传云端更新的版本。可以看到VS用绿色标记出了新增加的行,用红色标记出了删除的行,用斜线标记出了空白部分。是不是非常酷炫?

640?wx_fmt=png



本期大猫向大家介绍了如何在R编程中集成Github。借助于Visual Studio和Github,我们可以轻松做到版本控制以及多设备同步编程。VS对于Github的支持性可谓是任何其他IDE都无法匹敌的,大猫真心建议有需要的小伙伴可以进行尝试。如果觉得有用,希望大家多多转发(/≧▽≦)/



640?wx_fmt=jpeg

640?wx_fmt=jpeg

公众号后台回复关键字即可学习

回复 爬虫            爬虫三大案例实战
回复 Python       1小时破冰入门
回复 数据挖掘     R语言入门及数据挖掘
回复 人工智能     三个月入门人工智能
回复 数据分析师  数据分析师成长之路 
回复 机器学习     机器学习的商业应用
回复 数据科学     数据科学实战
回复 常用算法     常用数据挖掘算法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值