平台

Ubuntu 18.04
GitLab Community Edition 11.11.0
 

参考

 

概述

    gitlab提供了一个可以运行在本地的免费的代码托管平台,就像一个本地的github,可以将自己的平时写的或者一些经典的开源程序下载下来,然后mirror到本地gitlab进行托管,比如Android。我们知道Android工程是有几百个大大小小的git工程组成,为了管理这些git工程,Android提供了repo。关于repo的用法,请参考:
 
 
 
    那么如何将Android的代码仓库mirror到本地的gitlab上呢? 下面以一个Android代码仓库中的一个git工程说明一下,清楚了一个怎么搞,其他的也不在话下,可以用脚本批量处理。
 

正文

一、搭建gitlab服务

 
 
 

二、下载Android代码

参考:
 
 
为了方便以后下载,先按照官网的推荐,建立的一个Android代码仓库的本地mirror,下载完成后,内容如下:
 
 
然后利用这个mirror,本地clone出一份Android代码,比如:
 
 
对应的manifest.xml文件如下(当然也可以只clone一份aosp_mirror/platform/manifest.git,然后切到tags为android-7.1.2_r36的分支):
 
 

三、上传到gitlab

1、首先需要往本地gitlab上传一个repo工程
 
在上面下载的aosp_mirror目录下有一个git-repo.git工程,这里需要将其上传到gitlab上,首先在gitlab上创建一个空的git-repo工程:
 
 
2、上传git-repo.git
 
进入git-repo.git目录下,执行如下命令:
 
 
 
执行完毕后,可以看到gitlab里的git-repo里已经有东西了:
 
 
 
3、上传一个git工程
 
 
以上面的manifest.xml中的build/soong为例,熟悉manifest.xml语法的话应该清楚,path表示将来会在本地创建build/soong目录,而name表示的是远程服务器中的路径。
 
为了简单起见,首先在gitlab上创建一个名为build_soong的空的git工程:
 
 
然后在aosp_mirror的platform下找到soong.git工程,进行上传:
 
 
此时gitlab上的build_soong工程里已经有内容了:
 
 
 
4、创建一个manifest工程,用于存放manifest.xml文件
 
 
 

四、下载测试

 
repo init:
 
 
 
repo sync:
 
 
查看:
 
 
 
完。
 
 
 
 

如何将Android的AOSP仓库放置到自己的gitlab服务器上?的更多相关文章

  1. github仓库迁移到gitlab以及gitlab仓库迁移到另一个gitlab服务器

    一. github仓库迁移到gitlab 先进入 new project: 选择 Import project, 选择下面的github: 进入后,这里需要github的 personal acces ...

  2. Git系列②之部署企业级开源仓库gitlab服务器

    Git系列②之部署企业级开源仓库gitlab服务器 上一篇我们介绍了github的常见使用方法,下面开始部署本地开源仓库gitlab GitLab 是一个用于仓库管理系统的开源项目. 1.安装配置gi ...

  3. 如何搭建android源代码repo仓库

    如何搭建android源代码repo仓库 目录 如何搭建android源代码repo仓库 1 repo是如何管理仓库的? 1.1 repo如何工作的? 1.2 搭建repo服务需要做哪些事情? 2 部 ...

  4. android studio maven 仓库的使用

    转自:http://www.cnblogs.com/sihaixuan/p/4852974.html 原文:How to distribute your own Android library thr ...

  5. Android studio Maven仓库使用

    原文:How to distribute your own Android library through jCenter and Maven Central from Android Studio ...

  6. 免Root停用“Android键盘(AOSP)”

    一.效果:隐藏手机状态栏输入法选择图标: 二.手段:使用ADB免root 停用系统默认Android键盘(AOSP),这里参考了大神的方法,在此表示感谢: 三.实现过程: 上图 下面就是按照大神的方法 ...

  7. Android开发艺术探索——第二章:IPC机制(上)

    Android开发艺术探索--第二章:IPC机制(上) 本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化 ...

  8. Android必知必会-使用okhttp的PUT方式上传文件

    注:如果移动端排版有问题,请看 简书版 (<-点击左边),希望CSDN能更好的支持移动端. 背景 公司的文件上传接口使用PUT协议,之前一直用的都是老项目中的上传类,现在项目中使用了okhttp ...

  9. Android BLE与终端通信(四)——实现服务器与客户端即时通讯功能

    Android BLE与终端通信(四)--实现服务器与客户端即时通讯功能 前面几篇一直在讲一些基础,其实说实话,蓝牙主要为多的还是一些概念性的东西,当你把概念都熟悉了之后,你会很简单的就可以实现一些逻 ...

随机推荐

  1. 【cf补题记录】Codeforces Round #608 (Div. 2)

    比赛传送门 再次改下写博客的格式,以锻炼自己码字能力 A. Suits 题意:有四种材料,第一套西装需要 \(a\).\(d\) 各一件,卖 \(e\) 块:第二套西装需要 \(b\).\(c\).\ ...

  2. 【IntelliJ IDEA学习之六】IntelliJ IDEA 调试

    版本:IntelliJIDEA2018.1.4 一.设置热部署1.自动编译 2.配置hotswap 3.开启compiler.automake.allow.when.app.running CTRL ...

  3. Maven 教程(9)— Maven坐标详解

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79544532 Maven的一个核心的作用就是管理项目的依赖,引入我们所需的各种j ...

  4. scrapy中间件中发送邮件

    背景介绍:之前写过通过通过scrapy的扩展发送邮件,在爬虫关闭的时候发送邮件.那个时候有个问题就是MailSender对象需要return出去.这次需要在中间件中发送邮件,但是中间件中不能随便使用r ...

  5. [转帖]国产统一操作系统UOS龙芯版正式上线

    国产统一操作系统UOS龙芯版正式上线 2019/12/13 12:49:31来源:IT之家作者:骑士责编:骑士评论:446 https://www.ithome.com/0/462/725.htm   ...

  6. 【在 Nervos CKB 上做开发】Nervos CKB 脚本编程简介[5]:调试 debug

    作者:Xuejie 原文链接:https://xuejie.space/2019_10_18_introduction_to_ckb_script_programming_debugging/ Ner ...

  7. 阿里 P8 高级架构师吐血总结的 《Java 核心知识整理&面试.pdf》| 免费分享

    最近在网上发现一份非常棒的 PDF 资料,据说是阿里 P8 级高级架构师吐血总结的, 其中内容覆盖很广,包括 Java 核心基础.Java 多线程.高并发.Spring.微服务.Netty 与 RPC ...

  8. python matplotlib 设置x轴文本间隔显示(数字的话可以转为字符之后处理)

    一个国际友人绘图遇到的问题,查了一手资料.主要参考的是这个老哥的做法(https://blog.csdn.net/wyquin/article/details/80508260) #totalSeed ...

  9. C#中datatable操作

    //1.新建datatable,为其添加自定义列DataTable dt = new DataTable();dt.Columns.AddRange(new DataColumn[] { new Da ...

  10. json文件 乱码问题 根本解决办法

    1 工具→自定义:2 点击 命令 标签:3 在上方单选区选中 菜单栏,下拉列表选 文件:4 点击 添加命令5 在类别中,找到文件,在右侧找到高级保存选项,确定6 然后可以通过下移调整该选项在文件菜单中 ...