首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    高通SDX12:跨子系统数据共享实例分享

    SVN英文全称software version number,直译软件版本号,通常为两位数字,取值也必须是0~9的数字,而且99这个值是被保留的。高通平台的SVN号通常存储在Modem镜像中,X12项目也不例外,一般是modem在初始化时读取预编译就已经定义好的SVN号,并且同时从nv中读取到svn号,进行对比,若不一致,则将新svn号写入nv,这样就可以确保svn号能够一直随版本更新,且能够与imei号组成16位的IMEISV,在注网时通过空口上报给网络侧。 通常各通信模组厂商有一套自己定义的规则,用于定义软件版本号和SVN之间的对应关系,如取软件全版本号末两位作为SVN号,后续将以此为例;但通信模组通常会被用于MIFI、CPE、工业网关、工业路由器等场景,由于通信模组本身就是多核,CPU处理性能较强,尤其是高速通信模组,如高通SDX12、SDX55、SDX62、SDX65等平台,其处理能力优越,完全可以作为独立的处理器使用,无需再借助于host设备,这就催生了OpenCPU的方案,很多MIFI、CPE等厂商会直接基于上述平台进行二次开发,并且重新制定自己的版本号、SVN号规则。 但通常SDK仅会给第三方厂商开放boot、system、user等分区,boot分区存储kernel镜像,客户可以集成外设驱动和应用,如wifi、phy等;system是文件系统,客户可以增加自己的应用,删除一些不必要的应用,如网络管理相关、webui、网关配置等;user是客户存储客制化数据的分区,如客户的wifi配置、lan侧管理参数、客制化信息等。客户可以对这三个镜像或分区进行二次开发。

    04

    安装SVN

    现在的开发工作都是由团队合作来完成开发,通常都是团队中的每个人或者每几个人完成一个模块的开发,最后再将模块拼凑起来,形成一个完整的项目,这就涉及到了协同开发。在各个模块的开发过程中,肯定会因为出现BUG或者需求更改,而进行代码的修改甚至重构的,代码每修改一次就相当于迭代了一次版本,一个完整的项目中通常会有多个模块,如果每个模块的开发过程中都会修改或重构代码,那么如果没有一个平台来管理、控制这些代码,肯定会造成代码混乱的局面。所以这时候就有了一个概念:版本控制,代码管理平台的主要功能就是进行版本的控制,以及记录代码修改、版本迭代的历史信息。

    01

    Jenkins Subversion Plugin与本地Subversion Command不兼容

    使用Jenkins时Jenkins Subversion Plugin与本地Subversion Command不兼容 1、使用场景 在使用jenkins时,先使用Jenkins Subversion Plugin执行checkout或update操作,然后经过一些列操作后在batch命令行调用svn update命令行 2、错误详情 在batch命令行调用svn update命令行时,出现如下错误: svn: E155036: Please see the 'svn upgrade' command svn: E155036: The working copy at 'xxx' is too old (format 8) to work with client version '1.8.10 (r1615264)' (expects format 31). You need to upgrade the working copy first. 3、软件环境 Jenkins ver. 1.592 TortoiseSVN 1.8.8(Subversion 1.8.10,安装TortoiseSVN同时安装了Subversion Command) Jenkins Subversion Plugin 1.54(Jenkins ver. 1.592自带) 4、错误分析 错误很明显,是Jenkins Subversion Plugin与本地Subversion Command不兼容 Jenkins Subversion Plugin 1.54不支持svn 1.8,主要表现在不支持1.8版本的working copy 5、解决问题 只要让TortoiseSVN和Jenkins Subversion Plugin支持的svn版本保持一致即可解决问题 或者降低TortoiseSVN的版本,或者升级Jenkins Subversion Plugin到支持svn 1.8的版本,或者只用其中某一个 (1)降低TortoiseSVN的版本 如果降低TortoiseSVN的版本,应该将其降为1.7还是1.6呢? 先看看Jenkins Subversion Plugin 1.54是基于1.6还是1.7开发的。 通过查看Jenkins Subversion Plugin 1.54的源码(https://github.com/jenkinsci/subversion-plugin/releases/tag/subversion-1.54) 在pom.xml中看到svnkit相关的dependency信息如下: <dependency>            <groupId>org.jenkins-ci.svnkit</groupId>            <artifactId>svnkit</artifactId>            <version>1.7.10-jenkins-1</version> </dependency> 从中得出,SVNKIT的版本是1.7.10 在SVNKIT官网相关页面(http://svnkit.com/download.php)得知: SVNKit 1.8.7 is compatible both with Subversion 1.8 and Subversion 1.7 working copy formats. No upgrade is required for working copies in 1.7 format. SVNKit 1.7.13 is NOT compatible with Subversion 1.8 working copy format. It is compatible with Subversion 1.8 servers. Both SVNKit 1.7.13 and 1.8.7 support 1.6 and older working copy formats without need to upgrade. 查看SVNKIT1.7.13的changelog(http://svn.svnkit.com/repos/svnkit/tags/1.7.13/CHANGES.txt) 可以看出SVNKIT从1.7.8版本开始支持svn 1.6,SVNKIT1.7.10应该既支持svn 1.7又支持svn1.6。

    01

    私有代码托管平台的搭建与运维

    当我们谈到代码托管平台,我们不得不先谈一谈“版本控制”。什么是“版本控制”?版本控制是一种记录一个或若干内容变化,以便将来查阅特定版本修订情况的系统。在我们日常的编写代码过程或者工作中,版本控制显得尤为重要。有了它你就可以将选定的文件回溯到之前的状态,甚至可以将整个项目代码都回退到过去某个时间点的状态,你可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题出现的原因,又是谁在何时报告了某个功能缺陷等等。使用版本控控制系统通常还意味着,就算你胡乱处理项目中的文件,你也照样可以轻松回复到原先的养殖,而且额外增加的工作量却是微乎其微。

    02
    领券