前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用repo+gerrit,基于IMX6ULL开发自己的项目

使用repo+gerrit,基于IMX6ULL开发自己的项目

作者头像
哆哆jarvis
发布2022-08-23 14:10:32
4620
发布2022-08-23 14:10:32
举报
文章被收录于专栏:嵌入式进阶之路

软件架构

manifest是打算用repo管理所有git仓库

app 应用层,例如led点灯应用侧程序

drv 自己开发的驱动程序,放到一个仓,方便以后移植

在gerrit创建项目

对应下载链接

代码语言:javascript
复制
git clone ssh://zrc@114.132.213.22:29418/manifest
git clone ssh://zrc@114.132.213.22:29418/app
git clone ssh://zrc@114.132.213.22:29418/uboot
git clone ssh://zrc@114.132.213.22:29418/kernel
git clone ssh://zrc@114.132.213.22:29418/rootfs
git clone ssh://zrc@114.132.213.22:29418/drv

下载manifest仓

使用git clone命令下载后,输入ls -al能查看到有个.repo目录,这是隐藏文件,进入该目录下有个manifests文件夹,再进入,创建一个xxx.xml文件。

编写xml文件

repo就是通过该xml文件管理所有的git仓。

代码语言:javascript
复制
<manifest>
  <remote name="origin"
          fetch="ssh://zrc@114.132.213.22:29418" 
          review="ssh://zrc@114.132.213.22:29418" /><!--fetch=".." 代表使用 repo init -u 指定的相对路径 也可用完整路径,example:https://gitee.com/MarineJ/manifest_example/blob/master/default.xml-->

  <default remote="origin"
          revision="master" 
          sync-j="8"/><!--revision为默认的拉取分支,后续提pr也以revision为默认目标分支-->

  <project path="uboot" name="uboot" />
  <project path="kernel" name="kernel" />
  <project path="drv" name="drv" />
  <project path="rootfs" name="rootfs" />
  <project path="app" name="app" />

</manifest>

提交manifest仓的修改

代码语言:javascript
复制
git add .
git commit
git push

到这里其实基本上算是搭建好了, 可以尝试用repo去下载了。

使用repo init初始化代码仓

初始化完之后会有.repo目录

使用repo sync -c同步代码

-j参数表示线程数

最后同步完可以看到xml文件里的仓库都下载下来了

如果我们要下载某个仓,也可以通过repo sync 路径来下载某个仓。

单仓下载

提交代码的步骤

代码语言:javascript
复制
repo start 分支名 .
git add .
git commit
repo upload

整个代码下载 提交的过程十分简单方便,你学废了吗?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆jarvis 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档