Version control 你是如何组合的;修订控制“;加上;“工作流程”;为了R?
我记得遇到过R用户,他们写道他们使用“修订控制”(),我很想知道:如何将“修订控制”与统计分析工作流程结合起来 两个(非常)有趣的讨论讨论了如何处理工作流。但它们都不涉及修订控制元素:Version control 你是如何组合的;修订控制“;加上;“工作流程”;为了R?,version-control,r,workflow,statistics,Version Control,R,Workflow,Statistics,我记得遇到过R用户,他们写道他们使用“修订控制”(),我很想知道:如何将“修订控制”与统计分析工作流程结合起来 两个(非常)有趣的讨论讨论了如何处理工作流。但它们都不涉及修订控制元素: 问题的长时间更新:下面是一些人的回答,以及评论中德克的问题,我想进一步说明我的问题 在阅读了关于“”的Wiki文章(我以前不太熟悉)后,我清楚地意识到,在使用修订控制时,我们要做的是构建代码的开发结构。这种结构要么导致“最终产品”,要么导致几个分支 比如说,当你建立一个网站的时候。通常有一个最终产品你的工
- 您使用哪种版本控制软件(以及为什么)
- 您使用哪种IDE(以及为什么使用)? 更有趣的问题是关于工作流程:
- 你如何组织你的文件
- 你把什么作为一个单独的文件保存,什么作为一个修订?或者以另一种方式提问——在代码中什么应该是“分支”,什么应该是“子项目”?例如:当开始探索数据时,是否应该创建一个绘图,然后将其删除,因为它没有指向任何位置(但作为修订版保存),或者是否应该有该路径的备份文件
Tal我正在使用git进行版本控制。我的典型目录结构(例如文章目录)如下所示
.
..
.git
README
README.html
ana
dat
doc
org
大多数目录/文件(ana、doc、org)都受版本控制。当然,大型二进制数据集被排除在版本控制之外(通过.gitignore)。自述文件是一个Emacs组织模式文件。我自己使用git。本地存储库,存储在与R项目相同的目录中。这样,如果我删除了一个项目,存储库也会随之删除;我可以离线工作;我没有IRB,FERPA,HIPPA的问题要处理 如果我需要增加备份保证,我可以git到远程(安全的!)存储库
-Wil我的工作流程与Bernd的没有什么不同。我通常有一个主目录,我把所有的*.R代码文件放在那里。当我在一个文本文件中有大约5行以上的内容时,我就会启动版本控制,在我的例子中是git。我的大部分工作不在团队环境中,这意味着我是唯一一个更改代码的人。一旦我做了实质性的改变(是的,这是主观的),我就会办理登机手续。我同意德克的观点,这个过程与工作流程是正交的 我使用Eclipse+StatET,虽然Eclipse中有一个git插件(可能还有其他插件),但我不使用它。我在Windows中,只使用git gui for Windows。给你 在版本控制中,个人特质有很大的发展空间,但我建议将这一技巧作为最佳实践:如果你向他人报告结果(即,杂志文章、团队、公司管理层)总是在向他人报告结果之前进行版本控制签入。通常,3个月后,有人会查看您的结果并询问一些关于代码的问题,除非您知道生成这些结果时代码的确切状态,否则您无法回答这些问题。因此,将其作为一种实践,并在注释中添加“这是我用于第四季度财务报告的代码版本”或任何您的用例 还要记住,版本控制并不能取代好的备份计划。我的座右铭是:“3份拷贝,2个地理位置,1个心平气和。”
编辑(2010年2月24日):Stack Overflow的创始人之一乔尔·斯波尔斯基(Joel Spolsky)刚刚发布了一个新版本。如果您尚未选择版本控制系统,本教程可能是采用Mercurial的原因。我认为当谈到Git和Mercurial时,最重要的建议是选择一个并使用它。也许使用你的朋友/同事使用的,或者使用最好的教程。但是只要已经使用一个就可以了!;) 与其特别关注修订控制,不如说你真的在问一个更大的问题:统计分析与软件开发相比如何。这是一个有趣的问题。以下是一些想法: 数据分析更像是一门艺术,而不是一门科学。从某种意义上说,您可能更希望从作者写书时遵循的过程中寻找灵感,而不是软件开发人员遵循的过程。另一方面,我还没有遇到一个遵循直线的软件项目。即使在理论层面上,也存在大量的差异