利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]

Android (56) 2023-07-18 13:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效],希望能够帮助你!!!。

欢迎关注燚智能头条号↗

燚智能硬件开发网

讲讲物联网和智能硬件开发的那些事!

前言

在手机、智能硬件和物联网设备中,需要对Android系统的驱动层、框架层进行大量修改。

不同于APP软件开发,Android系统级软件源代码非常庞大,动辄上10G,还有很多人合作修改。

我们可以自建Git服务器,对Android系统级源码开发做好代码上传和改动管理

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第1张

如何分配版本库权限

1. 先由用户提供一个*.pub文件, 可以使用下面方法生成, pubname是用户名.

ssh-keygen -f ~/.ssh/pubname

2. 在上述生成的 ~/.ssh/目录下创建一个config文件,pubname是用户名

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第2张

3. 将用户生成的pubname.pub 拷贝到gitolite服务器,

scp pubname.pub user@IP

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第3张

4.切换到gitolite服务器,可以看到gitolite-admin目录,

ssh pub user@IP

5. 将pubname.pub 移动到gitolite-admin/keydir

6. 进入/gitolite-admin/conf目录,使用vim打开gitolite.conf, 如需打开modem的权限,在如下位置,将pubname名字添加就可以.

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第4张

7. 保存退出后,我们使用git status 查看,有两个文件有改动, 使用下面命令提交修改, 和我们代码的修改方式一样.

- git add gitolite.conf

- git add ../keydir/pubname.pub

-git status

查看是否所有文件都提交暂存区

- git commit -m "add pubname.pub"

8. 将我们的修改上传到服务器.

- git push

9. 如果已经有pub文件,需要打开某个用户的权限,只需要修改/gitolite-admin/conf/gitolite.conf

如何管理gitolite.conf

1. 我们使用vim gitolite.conf进入编辑界面后,发现有很多@TEAM的信息, 这里是为了方便,将用户的一些权限分组

哪些用户具有哪些权限。

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第5张

2. 在代码的版本库中我们就可以直接使用这个组,而不需要每个人单独再添加.

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第6张

3. 在代码的版本库中我们看到有RW+ , RW, R字样,这个代表权限,按照下面方式分配

R(只读权限):软件部释放此权限

RW(读写权限): 驱动部工作人员权限

RW+(超级读写权限): 管理员权限,具有纠错上传的能力,即如果驱动部有人错误上传,可使用此权限用户进行回溯上传,如:

branch_name: 分支名字

commit_id: 正常提交的commit id

git reset --hard commit_id

git push -f origin branch_name:branch_name


欢迎关注燚智能头条号↗

利用Git工具,实现Android开发版本管理丨Android系统级开发教程[亲测有效]_https://bianchenghao6.com/blog_Android_第7张

燚智能硬件开发网

智能硬件开发实战派!

精彩内容回顾

以Sensor Hub为例,讲解Android平台驱动移植的过程

Android平台,触摸屏驱动,兼容设计方案

发表回复