前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS-I开发流程

ROS-I开发流程

作者头像
zhangrelay
发布2022-04-29 14:07:27
4810
发布2022-04-29 14:07:27
举报

来源网址:

1 http://rosindustrial.org/developmentprocess/

2 http://rosindustrial.org/news/2017/8/8/final-in-series-on-ros-i-development-process-publishing-installation

--机器翻译--

概述

我们经常收到那些不熟悉开源开发的问题,关于我们遵循的过程来确保ROS-Industrial软件的质量。我们使用的过程(见上图)可能与任何大型软件项目不同。主要区别在于,团队由许多不同的利益相关者组成(缺乏更好的术语),欢迎任何利益相关方作出贡献。有了这个开放的模式,人们可能会假设我们有更多的支票来拦截“坏”的捐款,但实际上并不是必需的。我们对我们的开源项目使用相同的检查,就像我们对任何项目一样。具体来说,所有代码都在过程的多个步骤中进行验证。来自可信来源和未知来源的贡献给予了同样的审查。

约定

ROS-Industrial是一个社区项目。我们欢迎任何来源的人士,对那些对临时用户非常活跃的人士的贡献。以下部分概述了如何为ROS-Industrial做出贡献的步骤。它假设有一个现有的存储库,其中一个想要贡献(上图中的项目1),并且熟悉Git“叉和分支”工作流程,这里详细介绍。

  1. 在进行任何开发之前,贡献者将向ROS工业界传达需求和/或问题。这可以通过在适当的GitHub回购,问题回购或通过电子邮件发送用户组来提交问题。如果类似的发展正在进行中,这样做可能会节省时间,并确保您提交的任何方式都可以被审核者社群接受。
  2. 第二步(项目2)是实施你的改变。如果您正在编写代码贡献,我们强烈建议您使用ROS Qt-Creator插件。验证您的更改是否成功构建并通过所有测试。
  3. 接下来,将您的更改推送到您的个人叉子中的“功能”分支,并发出拉动请求(PR)(项目3)。PR允许维护者检查提交的代码。公关可以接受之前,维护者和贡献者必须同意所做出的贡献是适当的。此过程可能需要几个前后步骤(参见示例)。贡献者应该期待与最初的实施一样多地查看/更改代码。在作出任何贡献之前,可以通过与ROS-工业界沟通来减少这一时间。
  4. 发出拉动请求(PR)触发在后台自动发生的Travis Continuous Integrations(CI)步骤(项目4)。Travis CI执行多个操作,并且如果以下任何步骤失败,则相应地为维护者标记PR。
    • Travis工作流程:
      • 在新的Ubuntu虚拟机上安装准系统ROS发行版。
      • 创建一个catkin工作区,并将存储库放在其中。
      • 使用wstool检查任何从源代码依赖(即其他存储库)。
      • 使用rosdep解决软件包依赖关系(即使用apt-get安装软件包)。
      • 编辑catkin工作空间。
      • 运行所有可用的单元测试。
  5. 如果公关通过Travis CI,其中一名维护者对这些变更感到满意,他们会发布+1作为对PR的评论(项目5)。该+1表示公关已准备好合并。所有PR需要至少一个+1,并通过Travis CI才能合并。
  6. 下一步(项目6)是将PR合并到主分支。这通过GitHub Web界面通过选择“合并拉取”按钮完成。PR合并后,所有状态徽章都会自动更新。
  7. 定期地,维护者将释放包(项目7),然后将其发送到ROS Build Farm以创建Debian。
  8. 发布的软件包(项目8)由OSRF管理,不在一个安排的时间表。这通常发生在给定发行版的所有包都成功建立并且稳定的情况下。发动机动力学的现状可以在这里找到。可以通过更改链接中的发行版名称来浏览其他发行版。
  9. 软件包发布后,开发人员可以安装软件包(项目9)。
  10. 安装新版本后,开发人员可能会遇到问题,遇到问题,或者可能没有必要的功能,这些功能应该在GitHub软件包作为问题上报告(项目10)。如果发现问题或缺少开发人员需要的功能,则该循环从(项目2)开始。

有关详细信息,请参阅ROS-I维基

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 约定
相关产品与服务
机器翻译
机器翻译(Tencent Machine Translation,TMT)结合了神经机器翻译和统计机器翻译的优点,从大规模双语语料库自动学习翻译知识,实现从源语言文本到目标语言文本的自动翻译,目前可支持十余种语言的互译。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档