[Gerrit服务器]gerrit服务器用户使用手册

[Gerrit服务器]gerrit服务器用户使用手册

此文档为我工作中搭建安卓代码服务器时做的笔记。

[Gerrit服务器] gerrit服务器管理员使用手册
[Gerrit服务器]gerrit服务器的搭建(用于安卓代码管理)

文章目录

    • 一、下载android工程:
      • 1、将公钥上传管理员,管理员添加权限:
      • 2、本地下载`repo`工具:
      • 3、配置`repo`:
      • 4、`repo init`克隆`Android`的一个清单库,
      • 5、执行`repo sync`同步下载代码库
    • 二、使用工程:
      • 1、创建工作分支
      • 2、进入到某个仓库:
      • 3、下载hooks文件
      • 4、设置用户名和邮箱:
      • 5、修改完某一个仓库后,完成提交申请。
      • 6、更新代码
    • 三 、单独下载kernel:
    • 四、更新仓库:

一、下载android工程:

1、将公钥上传管理员,管理员添加权限:

若没有公钥,需要ssh-keygen生成。
公钥:~/.ssh/id_rsa.pub

2、本地下载repo工具:

    mkdir -p ~/repo
	cd ~/repo
	git clone http://review.mfunz.com/git-repo git-repo.git

3、配置repo

	cd git-repo.git
	sudo cp repo /usr/bin/repo

4、repo init克隆Android的一个清单库,

该命令会下载完整的repo工具和manifest清单文件

repo init -u ssh://[email protected]:9093/manifest.git -b master

5、执行repo sync同步下载代码库

repo sync

二、使用工程:

1、创建工作分支

因为:同步下来的代码一开始是没有任何分支,需要创建本地工作分支。

repo start master --all

2、进入到某个仓库:

因为:Gerritt拒绝了我们直接提交到master的推送我们需要pushrefs/for/master那条线上。

git config remote.origin.push refs/heads/*:refs/for/*

3、下载hooks文件

因为:commit一定要有Change-Id,我们可以从hooks文件中拷贝commit-msg文件下来,这样commit时,会自动帮我们生成Change-Id

[Gerrit服务器]gerrit服务器用户使用手册_第1张图片

4、设置用户名和邮箱:

git config user.name xxx
git config user.email xxx.com

5、修改完某一个仓库后,完成提交申请。

修改前需要git pull,更新自己的代码。

git add .
git commit -m “add”
git  push

此时gerrit界面会显示你的提交请求:

[Gerrit服务器]gerrit服务器用户使用手册_第2张图片

6、更新代码

审核通过后,需要自己从远程仓库更新自己的代码。
git pull

三 、单独下载kernel:

如果已经下载 Android SDK,内核源码和交叉编译工具链分别
SDK/kernelSDK/prebuilts目录里,无需额外下载,请跳到下一步。

如果没有下载 SDK,则需要下载内核源码及 Androidarm-eabi-4.6交叉
编译工具链。

获取内核源码:
git clone ssh://[email protected]:9093/kernel

Androidarm-eabi-4.6交叉编译工具链,可以看其它 Android SDK
prebuilts/gcc/linux-x86/arm/arm-eabi-4.6 目录是否存在,有则可以重用,
没有则需要到这里下载。

安装交叉编译工具链:
git clone ssh://[email protected]:9093/prebuilts

因为:
[Gerrit服务器]gerrit服务器用户使用手册_第3张图片

四、更新仓库:

服务器添加新仓库后,本地使用repo如何同步更新代码:

1. cd ~/xxx/.repo/manifest
2. git fetch origin
3. git rebase origin master
4. cd ../..
5. ~/xxxx/repo sync -j8

你可能感兴趣的:(子类___Gerrit服务器,------运维------)