首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >原项目结构

原项目结构
EN

Stack Overflow用户
提问于 2019-02-19 19:03:03
回答 1查看 210关注 0票数 2

我有多个Webots项目,它们在每个git存储库中进行管理。

如何将项目导入git子模块,以便将不同类型的机器人放入项目中?

这些项目的结构如下:

代码语言:javascript
运行
复制
robotA repo
  \controllers
  \protos
  \worlds
robotB repo
  \controllers
  \protos
  \worlds
project repo
  \controllers
    \robotA -- copied from robotA repo/controllers
    \robotB -- copied from robotB repo/controllers
  \protos
    \robotA -- copied from robotA repo/protos
    \robotB -- copied from robotB repo/protos
  \worlds

我是手动导入proto文件和控制器,但它太容易出错,不容易跟踪更改。

我正在尝试使用git子模块,但我认为git不支持只导入子模块的子目录。

我可以在Webots项目查找protos的地方设置一个环境变量吗?或者对管理多个机器人有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-20 07:52:32

不幸的是,git子模块实际上不支持只导入子模块的子目录。

也不可能设置一个环境变量来告诉Webots在哪里找到PROTO文件。

但以下是一些克服问题的可能性:

  1. 您可以编写脚本复制PROTO文件和控制器,这将节省您的时间和容易出错的手工复制。
  2. 您可以在robotA中克隆您的robotB和WEBOTS_HOME/projects/robots repos。
  3. 您可以扩展Webots来添加这个可选的环境变量定义,PROTO文件的列表在这里确定:https://github.com/omichel/webots/blob/master/src/webots/vrml/WbProtoList.cpp#L34
  4. 如果您在Linux上,您可以添加一个从WEBOTS_HOME/projects/robots/robotA到本地回购文件夹的软链接,其中定义了robotA proto。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54773254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档