在Windows系统上如何用Manifest管理嵌入式项目
相信很多Android开发出身的工程师对于manifest、repo和gerrit会有一定的好感,即使转行做了其他的行业,也希望可以延续Android的代码管理风格。这里记录了一个在汽车电子行业使用Gerrit+repo+Manifest来管理嵌入式项目的方法,希望对读者有帮助。
- 关于Gerrit
Gerrit是Google为Android系统研发量身定制的一套免费开源的代码审核系统,它在传统的源码管理协作流程中强制性引入代码审核机制,确保核心代码多人校验、多人互备和自动化构建核验。Gerrit提供了一个基于Web的图形化的界面,使得代码审查过程更加直观和高效。对比Github/Gitee,Gerrit要求代码入库前做Code Review,通过人工代码审核和自动化代码验证过程,将不符合要求的代码屏蔽在代码库之外。
Gerrit常用于大型项目的代码审查流程中,确保代码质量和管理代码更改。它与Repo结合使用,使得管理多个git仓库的代码审查变得更加高效和集中。
- 关于Manifest
Manifest文件是Repo用来管理多个git项目的配置文件。它包含了远程服务器的信息、项目的路径和名称等配置信息。它定义了项目中需要同步的各个Git仓库的详细信息。Manifest文件通过XML格式列出了所有相关Git仓库的URL、分支、路径等信息,并通过这个文件,Repo可以准确地同步和管理多个Git仓库,确保开发环境中的代码库始终保持一致和最新。远程仓库可以是本地部署的Gerrit,也可以是远程托管的Github/Gitee等。
环境配置
1. 安装mobaxterm(建议)
2. 下载repo
cd
mkdir bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
3. 配置环境变量
打开或者新创建~/.bashrc文件,添加下面内容
export PATH=$PATH:~/bin
4. 在Gerrit上创建manifest代码仓库
5. 编译Manifest.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<manifest><remote name="gerrit"fetch=".."revision="master"review=""/><remote name="gitee"fetch="git@gitee.com:xxxx"autodotgit="true"/><remote name="github"fetch="ssh://git@github.com"/><default remote="gerrit" revision="master" sync-j="4"/><project path="path1" name="project1" revision="branch-develop"/><project path="path2" name="project2" revision="2a7d655f0baaaf83d5d4f53dc60602532f38ef4c" remote="gitee"/><project path="path3" name="project3" revision="master" remote="github"/>
</manifest>