• vcstool是什么?


    为什么会去了解vcstool,在想要手动编译并且获取ROS源码的时候,有一个Get ROS 2 code的章节中使用到了这个工具。

    mkdir -p ~/ros2_foxy/src
    cd ~/ros2_foxy
    wget https://raw.githubusercontent.com/ros2/ros2/foxy/ros2.repos
    vcs import src < ros2.repos
    

    vcstool

    用于维护来自多个版本控制系统的项目工作区的命令行工具。

    vcstool 提供了基于单个工作区定义文件(.repos 或 .rosinstall)来管理多个本地 SCM 存储库(支持 git、mercurial、subversion、bazaar)的命令。

    vcstool 替换wstool。与 wstool 相比,它在文件系统中存储库的工作目录旁边没有任何状态。

    为了与rosinstall_generator兼容,可以读取 .rosinstall 文件。vcs export生成的 .repos 文件的文件格式提供了更严格的保证(例如,所有条目在获取它们时都是无冲突的)。

    安装

    对于在Debian的平台

    sudo apt install python3-vcstool
    

    或者

    sudo pip install -U vcstool
    

    在Ubuntu平台

    sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
    sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 0xAB17C654
    sudo apt-get update
    sudo apt-get install python3-vcstool
    

    使用

    脚本vcs的使用类似于VCS客户端git,hg等。help命令提供了可用命令的列表以及其他说明:

    vcs help
    

    导出仓库集

    vcs export可以把当前工作空间以YAML格式输出所有仓库的路径,vcs类型,URL和版本信息。

    vcs export > my.repos
    

    导入仓库集

    mkdir -p ~/ws/src
    cd ~/ws
    vcs import src < PATH_TO_ROSINSTALL_FILE.rosinstall #从`.repos`或者`.rosinstall`填充文件到工作区
    vcs pull  #更新文件
    

    验证仓库文件

    vcs validate命令获取一个YAML文件,该文件通过stdin传入并验证其内容和格式。先前导出的文件或手工生成的文件的数据通过管道传递到:

    vcs validate < my.repos
    

    validate命令还支持rosinstall文件格式的输入。

    总之就是,这个工具很适合管理多个仓库相互依赖的工作空间,例如ROS2的工作空间管理就是使用这个工具。

  • 相关阅读:
    XMPP框架下微信项目总结(5)花名册获取(好友列表)
    XMPP框架下微信项目总结(4)重新连接服务器
    XMPP框架下微信项目总结(3)获取点子名片信息(个人资料)更新电子名片
    XMPP框架下微信项目总结(2)授权登陆/注销/注册/打印日志
    XMPP框架下微信项目总结(1)环境配置
    比较 http连接 vs socket连接
    js判断变量是否为undefined
    sql查询优化的方法
    Jquery学习之插件开发
    Jquery学习之Jquery插件
  • 原文地址:https://www.cnblogs.com/hokori/p/15342696.html
Copyright © 2020-2023  润新知