软件架构
manifest是打算用repo管理所有git仓库
app 应用层,例如led点灯应用侧程序
drv 自己开发的驱动程序,放到一个仓,方便以后移植
在gerrit创建项目
对应下载链接
git clone ssh://zrc@114.132.213.22:29418/manifestgit clone ssh://zrc@114.132.213.22:29418/appgit clone ssh://zrc@114.132.213.22:29418/ubootgit clone ssh://zrc@114.132.213.22:29418/kernelgit clone ssh://zrc@114.132.213.22:29418/rootfsgit clone ssh://zrc@114.132.213.22:29418/drv
下载manifest仓
使用git clone命令下载后,输入ls -al能查看到有个.repo目录,这是隐藏文件,进入该目录下有个manifests文件夹,再进入,创建一个xxx.xml文件。
编写xml文件
repo就是通过该xml文件管理所有的git仓。
<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仓的修改
git add .git commitgit push
到这里其实基本上算是搭建好了, 可以尝试用repo去下载了。
使用repo init初始化代码仓
初始化完之后会有.repo目录
使用repo sync -c同步代码
-j参数表示线程数
最后同步完可以看到xml文件里的仓库都下载下来了
如果我们要下载某个仓,也可以通过repo sync 路径来下载某个仓。
单仓下载
提交代码的步骤
repo start 分支名 .git add .git commitrepo upload
整个代码下载 提交的过程十分简单方便,你学废了吗?
号主:一枚机械专业本科生,经历了转行,从外包逆袭到芯片原厂的Linux驱动开发工程师,深入操作系统的世界,贯彻终身学习、终身成长的理念。平时喜欢折腾,寒冬之下,抱团取暖,期待你来一起探讨技术、搞自媒体副业,程序员接单和投资理财。【对了,不定期送闲置开发板、书籍、键盘等等】。
如果你想了解我的转行经验,欢迎找我交流~gongzhong号【哆哆jarvis】
一起不断探索自我、走出迷茫、找到热爱,希望和你成为朋友,一起成长~