利用Git工具,實現Android開發版本管理丨Android系統級開發教程

燚智能硬件開發網

講講物聯網和智能硬件開發的那些事!

前言

在手機、智能硬件和物聯網設備中,需要對Android系統的驅動層、框架層進行大量修改。

不同於APP軟件開發,Android系統級軟件源代碼非常龐大,動輒上10G,還有很多人合作修改。

我們可以自建Git服務器,對Android系統級源碼開發做好代碼上傳和改動管理

利用Git工具,實現Android開發版本管理丨Android系統級開發教程

如何分配版本庫權限

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

ssh-keygen -f ~/.ssh/pubname

2. 在上述生成的 ~/.ssh/目錄下創建一個config文件,pubname是用戶名

利用Git工具,實現Android開發版本管理丨Android系統級開發教程

3. 將用戶生成的pubname.pub 拷貝到gitolite服務器,

scp pubname.pub user@IP

利用Git工具,實現Android開發版本管理丨Android系統級開發教程

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系統級開發教程

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系統級開發教程

2. 在代碼的版本庫中我們就可以直接使用這個組,而不需要每個人單獨再添加.

利用Git工具,實現Android開發版本管理丨Android系統級開發教程

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系統級開發教程

燚智能硬件開發網

智能硬件開發實戰派!

精彩內容回顧




分享到:


相關文章: