[R]在Linux上创建自己的R Package并Git

因为我在工作中遇到了需要高频重复使用的代码,并且需要被多名分析师使用,故考虑创建R Package并储存到GitHub远程仓库,使得我们能够节省(copy&paste的)时间更高效地完成项目工作,同时(bonus!)更快地进行代码的更新和分享


Step 1:准备工作。

GitHub是服务端,要想在自己电脑上使用Git,我们还需要一个Git客户端。

Ubuntu 安装 Git:  apt-get install git  
CentOS 安装 Git:  yum install git  
查看 Git 版本信息:  git version  
配置 Git 用户信息:
    git config --global user.name "ljingsheng"
    git config --global user.email "[email protected]"
Windows用户请下载 http://msysgit.github.com/
MAC用户请下载 http://code.google.com/p/tortoisegit/
一路Next,安装成功后, 回到C盘,或任何文件夹下,点鼠标右键会多出一些菜单。如Git Bash here、Git Gui,说明安装成功。

↑ 把用户名和邮箱换成你自己的,键入命令后屏幕没有输出,则表示设置成功了

接下来开启SSH。如果你使用的是 CentOS,则默认开启了 SSH,可以忽略这一步。

Ubuntu 安装 SSH:  apt-get install ssh  
查看 SSH 服务状态:  ps -e | grep sshd  

sshd 表示 ssh-server 已启动

使用 ls -al ~/.ssh 命令查看 ssh key 是否存在,若不存在则
生成 SSH KEY:  ssh-keygen -t rsa -C "[email protected]" 
↑ 生成 ssh key 过程中,会让你填写 passphrase,连按三次回车跳过即可
进入 /.ssh 目录,查看 id_rsa 和 id_rsa.pub 文件。id_rsa 为私钥,id_rsa.pub 为公钥。打开 id_rsa.pub 文件,将内容复制到剪贴板。
 
 
cd /.ssh
ls -a

cat ~/.ssh/id_rsa.pub
登录 GitHub,打开 Personal settings 页面,选择 SSH and GPG keys 选项,Title 可以随意填写,Key 中填写刚从 id_rsa.pub 中拷贝的内容。这时候开始,我们就可以连接到GitHub了。


Step 2:连接到GitHub

首先通过 SSH 地址将 GitHub 仓库克隆到本地:

git clone [email protected]:ljingsheng/GMV-Demo.git

第一次连接时,需要你确认 GitHub 的 Key 的指纹信息是否真的来自 GitHub 的服务器

克隆到本地的仓库会自动关联远程仓库,可以通过git remote -v 命令查看关联状态

关联后可以通过 git push origin master 命令推送修改。注意:如果克隆的是其他人的仓库,由于没有权限,你将不能推送修改。

/* 创建一个 readme.md 文件 */ 
vim readme.md
/* 输出 readme.md 文件内容 */ 
cat readme.md
/* 将文件添加到暂存区 */
git add readme.md 
/* 提交本次修改 */
git commit -m "add readme file"
 /* 推送到远程仓库 */
git push origin master

之后我们通过R Studio来维护这个目录。


Step 3:安装需要的R Packages

## Tools you need
install.packages("devtools")
library("devtools") #http://r-pkgs.had.co.nz/description.html
devtools::install_github("klutometis/roxygen")
library(roxygen2) # https://github.com/klutometis/roxygen#roxygen2
install.packages(c("testthat", "knitr"))

在安装roxygen之前可能要先装libxml2-dev:

apt-get install libxml2-dev

Step 4:创建Package

进入刚刚克隆的文件夹,使用create()函数创建你的包:

## Directory
setwd("~/My_R_Projects/20180611 - GMV Package/GMV-Demo")
create("GMVDemo")

新建一个Project,关联这个目录,检查Global Options和Project Options:



此后便可以通过Git Panel来同步远程代码仓库。


Step 5:增加函数



Step 6:增加Help文档



Step 7:安装!




Step 8:发布并投入使用!


install_github('GMVDemo','github_username')


参考文章:

  1. 【推荐阅读】http://r-pkgs.had.co.nz/intro.html
  2. 【推荐阅读】http://kbroman.org/github_tutorial/
  3. https://github.com/klutometis/roxygen#roxygen2
  4. https://blog.csdn.net/samhuairen/article/details/53843719
  5. https://blog.csdn.net/hustpzb/article/details/8230454/
git clone https://github.com/ljingsheng/GMV-Demo.git

猜你喜欢

转载自blog.csdn.net/zengmiaoqi5792/article/details/80651593
今日推荐