Git DVCS如何帮助科学编程?
我正在做一些前期工作,调查DVCS(如Git、Hg、Bazar)如何帮助科学编程,特别是对研究生。我认为我在这方面处于相当好的位置,因为我已经编程好几年了,目前正在开始一个自然科学硕士课程。我们的目标是在一两个月内对此做一个简短的介绍 在我看来,除了源代码控制的明显优势外,DVCS目前还为研究生的日常生活提供了以下改进:Git DVCS如何帮助科学编程?,git,dvcs,scientific-computing,Git,Dvcs,Scientific Computing,我正在做一些前期工作,调查DVCS(如Git、Hg、Bazar)如何帮助科学编程,特别是对研究生。我认为我在这方面处于相当好的位置,因为我已经编程好几年了,目前正在开始一个自然科学硕士课程。我们的目标是在一两个月内对此做一个简短的介绍 在我看来,除了源代码控制的明显优势外,DVCS目前还为研究生的日常生活提供了以下改进: 分支: 这是最大的一个。从DVCS实践的观察可以看出,廉价的分支主要鼓励新特性的实验。科学编程就是实验。可以创建不同的分支来调整参数或算法。这一点尤其重要,因为大多数科学代码在
相关的:
- “DVCS的明显优势”:值得重复的是,尤其是在不允许外部连接的it规则可能很严格的学术环境中,DVCS允许使用本地存储库。这意味着您不必“连接”到一个中央回购协议来访问项目的完整历史记录,而这正是DVC对科学程序员的主要贡献
- 分支:学生需要(因为这很容易)。我看到了我在名为“toto”、“星期一”、“我的名字”的分支机构中的份额……:一旦发布到另一个(更中心的)回购协议中,我们该如何处理这些?如果要合并20多个分支以最终确定一个公共代码,。。。这个过程很快就会变得容易出错
- 部署(您称之为“推送到服务器”):是的,DVC可以用于某种部署,但这意味着您已经组织了repo,以包括某种类型的(要推送到服务器上的文件集),并且您已经对其进行了版本连接。发布管理包括许多其他无法全部存储在DVCS中的步骤,例如,去变量化过程,在该过程中,您将配置文件中的变量替换为适合目标服务器的实际值(端口号、本地路径等)。您可以尝试通过分支直接管理这些配置文件,但根据我的经验,它很快就会变得太复杂而无法遵循
- 协作:不保留给DVCS。(风投公司也提供这些服务)。注意,对于某些格式(Word文档),其内部修订系统可能更有效
- 用于科学编程的DVCS的一个大问题是二进制数据。通常情况下,科学编程需要输入/输出巨大的文件,这会很快扼杀我所知道的每个DVC(bzr、hg、git)的性能。这是目前svn更好的一个领域
我认为DVC对论文也很有用,但这意味着你的合作者也知道DVC。关于你的主要观点:
cvs checkout
、cvs update
和cvs commit
的原始版本
是的,CVS。我认识一个软件团队的领导者,他因为这些人而推迟了颠覆的行动
在下一级技能中,他们还知道diff
和stat
命令以及如何指定分支或标记,但可能会避免创建或合并分支
如果您计划引入DVCS,请计划一个强化的、持续的培训和支持计划。科学家(或至少是物理学家)通常很少接受计算机科学方面的正式培训,可能对软件过程的概念也很模糊 不是r