ROS交流群
ROS Group
产品服务
Product Service
开源代码库
Github
官网
Official website
技术交流
Technological exchanges
激光雷达
LIDAR
ROS教程
ROS Tourials
深度学习
Deep Learning
机器视觉
Computer Vision

如何恢复小强中被修改的软件包



  • 在使用小强的过程中可能会对小强中的相关软件进行修改。很容易出现修改后小强不能正常工作的情况。下面介绍如何恢复小强的相关软件。

    小强的相关软件都是通过git进行代码管理的。任何对代码的更改都是有迹可循的,也是可以恢复的。下面以startup软件包为例进行说明。

    假设我们修改了小强的startup软件包,导致有些启动项没有正常运行。如何查看我们做了哪些修改呢?可以通过下面的指令

    # 进入startup 软件包所在目录
    roscd startup 
    # 查看我们进行了哪些修改
    git diff
    

    如果有修改我们可以看到下面的输出

    9f2d8e67-b387-4e76-bfc4-742882e3b532-image.png

    从这里我们可以看出usb_cam包的launch文件被注释掉了。这样小强就不会开机自动启动摄像头了。

    如果我们想要恢复到原来的文件状态,可以执行下面的指令。

    # 进入startup 软件包
    roscd startup
    # 撤销所有更改
    git stash
    

    e3ef94be-4346-4494-a5f8-c9a1e47e9c11-image.png

    可以看到刚才的更改已经被撤销了。

    如果你不习惯使用命令行进行操作,我们也可以使用vscode进行操作。

    通过vscode打开startup软件包。

    aa953499-ea1b-4914-8295-fc436a92f40f-image.png

    点击左侧第三个按钮,进入代码管理界面

    13e5f596-d55a-48b4-b41f-1b1d5031f947-image.png

    可以看到这里列出了startup.launch文件被修改
    想要查看修改内容,只需要点击对应的文件即可。

    90617118-652e-4399-918c-c386081b9781-image.png

    可以看到usb_cam那一行被标记修改过了。

    如果想要撤销修改可以右键单击文件,在弹出的菜单中选择撤销更改。
    5a04493b-8d32-4b6c-a35d-9c9d686fa908-image.png

    以上是代码的恢复。但是仅恢复代码有时小强还是无法正常工作。对于startup软件包来说,要需要重新注册启动项后,更改才能生效。对于启动项的注册可以查看小强用户手册。

    对于需要编译的代码,代码需要在重新编译后才会生效。比如xqserial_server在进行更改后需要

    # 进入小强工作空间
    cd ~/Documents/ros
    # 编译xqserial_server软件包
    catkin_make -DCATKIN_WHITELIST_PACKAGES="xqserial_server"
    

    编译成功后sudo service startup restart这样更改才能生效。

    对于进行了很多修改,而以上恢复办法仍无法让小强正常工作时,那只能用重装系统大法了


Log in to reply