美文网首页
将展讯8541E代码添加到内网gerrit服务器

将展讯8541E代码添加到内网gerrit服务器

作者: DD_Dog | 来源:发表于2021-11-12 11:17 被阅读0次

目的

展讯发布代码后,可以下载工作区部分或者镜像,因为后面在做项目时要自己管理分支和代码提交,所以需要在自己的服务器上建立镜像。
有两种方法:

  • 一:下载工作区部分(即代码),然后自己把每一个仓库提交到gerrit。Android不推荐,因为仓库有一千多个,太繁琐
  • 二:从展讯服务器下载镜像,镜像拷贝到公司服务器的git代码仓库路径下直接使用

下面是我使用方法二的操作步骤

一、首先从展讯服务器下载镜像到本地电脑

如果条件允许的话,这一步骤也可以直接下载到gerrit,这样就省略步骤二

下载镜像 [ instructions of downloading mirror ]

$ mkdir workspace
$ cd workspace

# 使用SSH连接 / for ssh user
$ repo init --repo-url ssh://username@git.unisoc.com:29418/tools/repo.git -u ssh://username@git.unisoc.com:29418/platform/cus-manifest -b username/master --mirror -m mirror.xml
$ repo sync
或者
# 使用HTTPS连接 / for https user
$ repo init --repo-url https://git.unisoc.com/gerrit/tools/repo.git -u https://git.unisoc.com/gerrit/platform/cus-manifest -b username/master --mirror -m mirror.xml
$ repo sync

二、将镜像拷贝到gerrit服务器

我下载的镜像都放在了8541E目录下,现在把它拷贝到gerrit服务器

scp -rf 8541E gerrit@192.168.1.153/home/flyscale/gerrit/review_site/git/android/platform/

三、重建索引

这一步是把拷贝过来的镜像添加到gerrit的数据仓库中,这样才能管理起来

./reivew_site/bin/gerrit.sh stop #重建索引前要停掉gerrit服务器
#review_site是gerrit安装路径
java -jar gerrit.war reindex -d review_site 
./reivew_site/bin/gerrit.sh start

repo配置文件

把展讯的配置文件修改后直接放到自己的manifest仓库中。
修改点:

  • 1、gerrit服务器地址
  • 2、project路径
    下面贴出修改前和修改后的差异部分:

修改前:

<manifest>
  <remote fetch=".." name="korg" review="http://review.source.spreadtrum.com/gerrit/"/>
  <default revision="sprdroid10_trunk_19c_rls1_c1" remote="korg" sync-j="4"/>

修改后:

 <manifest>
    <remote fetch="../../.." name="origin" review="http://192.168.1.153:81"/>
    <default revision="sprdroid10_trunk_19c_rls1_c1" remote="origin" sync-j="4"/>

其它基本不用修改。正常情况下就可以从自己的服务器下载代码了。

从公司服务器下载代码:

$ repo init -u ssh://admin@192.168.1.153:29418/android/platform/9820e/manifest -m sprdroid10_trunk_19c_rls1_c1_flyscale.xml
$repo sync

遇到的问题

一、分支问题

实际分支为flyscale/ sprdroid10_trunk_19c_rls1_c1,但是maniest里面配置的是 sprdroid10_trunk_19c_rls1_c1,仍然能下载是什么原因?
答:因为每个project配置了revision,依据提交id进行下载,如下:

<project name="android/platform/8541e/platform/build/blueprint" path="build/blueprint" revision="8fd0c7f4d39d335886154    c0fe1eeb3a91e19f592" groups="pdk,tradefed" upstream="flyscale/sprdroid10_trunk_19c_rls1_c1"/>

二、部分镜像不正确

从展讯下载的镜像,有的仓库无法正常下载镜像,但是能正常下载工作区拷贝,怎么办?
答:使用工作区拷贝推送到gerrit生成镜像

三、历史提交超过10000

提交次数超过10000的话无法提交以服务器,而这些提交对我们来说 没有用了,所以检出工作区代码,删掉.git目录,重新初始化

相关文章

网友评论

      本文标题:将展讯8541E代码添加到内网gerrit服务器

      本文链接:https://www.haomeiwen.com/subject/sfnnzltx.html