【问题标题】:Create Android server local repository for specific tag为特定标签创建 Android 服务器本地存储库
【发布时间】:2014-01-22 04:29:00
【问题描述】:

我想为 Android 分支 android-4.3_r1.1 创建一个本地服务器 我关注这个线程: Cloning Android sources to a local repository server

但我不能对特定标签做同样的事情, 怎么办?

我想要一个服务器,然后从客户端做一些工作并将其推送到服务器,以便其他客户端可以进行同步并查看我的提交...

在服务器端,这就是我所做的: repo init -u https://android.googlesource.com/platform/manifest --mirror 回购同步

在客户端: repo init -u git-server/android/platform/manifest.git/ -b android-4.3_r1.1 回购同步

我收到了很多这样的错误: 致命:“git-server/android/device/ti/panda”似乎不是 git 存储库 致命:远端意外挂断

并且所有进程都失败了......(错误:由于获取错误而退出同步)

我想要一个在 android-4.3_r1.1 上工作的客户端 AOSP,然后做一些更改并将它们提交到 git 服务器。

【问题讨论】:

  • stackoverflow.com/questions/6136789/… 中描述的方法适用于将标签复制到本地服务器。请更具体地说明您遇到的问题。
  • 它只适用于最新的分支...我想克隆一个特定的分支
  • 啊,是的。仔细阅读后,我注意到我链接到的问题有些过时了。但是既然你的问题很清楚,所以我会写一个正确的答案。

标签: android repository android-4.3-jelly-bean


【解决方案1】:

repo init --mirror -u $URL/platform/manifest 方法很正常,但您只会同步相关清单中列出的 git(在本例中为 master 分支)。因此,虽然 同步的所有 git 都将包含所需的所有分支和标签,但清单本身并不包括所有 git,因此如果清单分支您随后尝试基于创建的镜像初始化工作区将失败'已选择将点同步到主分支清单中未包含的 git。

AOSP 团队设置了特殊的清单,镜像/清单,它对于构建任何东西都没有用,但会列出所有分支的所有 git,因此对于镜像非常有用。换句话说,像这样初始化你的镜像:

repo init --mirror -u https://android.googlesource.com/mirror/manifest

请参阅 AOSP Downloading the Source 文档。

【讨论】:

  • 我做了你的建议,(在服务器上运行上述命令)。现在在客户端我做了以下操作: repo init -u /home/omri/git-server/android.git/platform/manifest.git/ -b android-4.3_r1.1 然后我做了:repo sync bionic (I got bionic) 然后使用 repo start bionic-devel 启动一个 git 分支。并编辑一些文件....将它们提交到我的本地存储库中,但是当我想推送它们时,git说一切都是最新的,我不明白为什么,我想将我的更改从客户端推送到服务器,所以其他人可能会看到我的更改...谢谢
  • @omri-c:如果我的回答有效,请接受。您的后续问题是一个完全不同的问题,因此请为它打开一个新问题。
猜你喜欢
  • 2019-09-06
  • 2014-01-25
  • 2015-10-20
  • 2012-11-29
  • 2015-10-19
  • 1970-01-01
  • 2011-07-29
  • 2020-08-14
  • 2020-06-03
相关资源
最近更新 更多