如何通过 git 与其他拥有 Android 存储库的人共享代码?
Posted
技术标签:
【中文标题】如何通过 git 与其他拥有 Android 存储库的人共享代码?【英文标题】:How do I share code via git with others having the Android repo? 【发布时间】:2010-10-13 04:19:35 【问题描述】:我想与其他人一起处理一些android 代码,并且需要设置存储库以在团队中本地使用。但是,似乎repo
不允许我这样做。在 android repo 中克隆 git 存储库也不会像这样:
$ git clone /var/android/.repo/projects/bionic.git/
我收到以下错误消息:
Initialized empty Git repository in /home/user/mydroid/bionic/.git/
0 blocks
Warning: Remote HEAD refers to nonexistent ref, unable to checkout.
有没有人尝试过成功地与其他人一起在 Android 中的 git 存储库上工作,而无需发送到 Android 项目本身?
我还尝试执行以下操作,我在共享计算机上和本地计算机上启动了一个客户端,如下所示:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
我也尝试像这样将单独项目(例如仿生)的遥控器添加到共享计算机,但出现错误:
$ git clone /initech/android/bionic
fatal: cannot clone empty repository
我也尝试这样做:
$ git clone /initech/android/.repo/projects/bionic.git/
Initialized empty Git repository in /home/user/mydroid/bionic/.git/
0 blocks
Warning: Remote HEAD refers to nonexistent ref, unable to checkout.
它找到一个 git 存储库,克隆它,但即使远程中有一个主题分支,也找不到任何对 checkout 的引用。什么给了?
【问题讨论】:
【参考方案1】:我不确定 Repo 是什么或做什么,但在我看来你想克隆 git://android.git.kernel.org/platform/bionic.git
:
git clone --bare git://android.git.kernel.org/platform/bionic.git
然后可以再次克隆此克隆:
git clone bionic.git bionic-jim
cd bionic-jim
#edit
git commit -a -m "foo"
git push
更改将被推送到../bionic.git
。然后有人必须进入 bionic.git
并推送到某个上游存储库。
【讨论】:
不,我不想从 android.git.kernel.org 克隆它。这也行不通。 它可以从 android.git.kernel.org 获取,但我想在自己的遥控器上进行。 更新:重新克隆有效。我会更多地尝试这个。谢谢。 是的,第一个克隆是你自己的远程,然后任何人都可以从中克隆(通过 SSH 或其他方式)【参考方案2】:消息“警告:远程 HEAD 引用不存在的 ref,无法结帐。”仅告诉您 HEAD 链接不存在,因此 Git 不知道要检出哪个修订版到您的本地工作目录。但是,.git 目录是正常创建和填充的。只需执行git checkout <whatever-branch-you-want>
并开始破解。
【讨论】:
以上是关于如何通过 git 与其他拥有 Android 存储库的人共享代码?的主要内容,如果未能解决你的问题,请参考以下文章
如何在服务器上设置 git 存储库,并允许多个用户执行 git pull,而不是由一个用户拥有?
如何通过 Android Studio 在我的树莓派上使用本地 Git 服务器?