repo init --mirror -u https://android.git.kernel.org/platform/manifest.git
repo sync
on my server. If a client tries running
repo init -u https://android.git.kernel.org/platform/manifest.git -b
gingerbread-release
repo sync
They get stuck as some of the directories on the branch do not seem to
exist in server's mirror.
I suspect this is due to the mirror syncing with the master branch and
the gingerbread-release branch having projects that do not exist in
the master branch (device/htc for instance).
Can anyone confirm or deny my suspicion? and/or tell me what i am need
to do resolve the issue?
Thanks.
repo init -u https://android.googlesource.com/mirror/manifest --mirror
JBQ
> --
> To unsubscribe, email repo-discuss...@googlegroups.com
> More info at http://groups.google.com/group/repo-discuss?hl=en
>
--
Jean-Baptiste M. "JBQ" Queru
Software Engineer, Android Open-Source Project, Google.
Questions sent directly to me that have no reason for being private
will likely get ignored or forwarded to a public forum with no further
warning.
You can update your existing mirror in-place, syncing it will only add
the projects you don't already have.
JBQ
I get the following error from that manifest.
repo init -u https://android.googlesource.com/mirror/manifest --mirror
fatal: --mirror not supported on existing client
However it does indeed download a full mirror of the AOSP when i sync.
So thanks again.
You need to erase your .repo dir. You cannot switch between manifests
so easily for bare repositories.
rm -rf .repo
repo init -u https://android.googlesource.com/mirror/manifest --mirror
repo sync
JBQ
It looks to me as if the --mirror trick only works with manifests that
use the ".." fetch attribute. Have I got that right?
If so, can anyone suggest a convenient way of building and maintaining
a mirror for a multi-remote system?
I've definitely tried to RTFM... if only I could FTFM (F=find).
Pointers most welcome.
-blake
> I have a really slow line and I need to do lots of repo re-creation.
> I've probably spent the better part of a month, now, trying to figure
> out how to create and use a local mirror for our system.
>
> It looks to me as if the --mirror trick only works with manifests that
> use the ".." fetch attribute. Have I got that right?
Mirror works anyway, but without the new relative git URLs that were
recently introduced the clients using your mirror need to use Git's
insteadOf mechanism to rewrite the real URL to your local URL. For
example, put the following in ~/.gitconfig:
[url "git://yourserver.example.com/"]
insteadOf = https://android.googlesource.com/
> If so, can anyone suggest a convenient way of building and maintaining
> a mirror for a multi-remote system?
If you've been able to clone all the gits you're almost there, just use
the insteadOf trick on the clients if the relative URLs aren't available
in the manifest you're mirroring.
One thing that can complicate matters is if you want to track the
gits found on multiple manifest branches. Although a git clone contains
all branches, the set of gits listed in different manifests isn't
necessarily the same. Google maintains a mirror manifest that lists
the superset of all gits used in several releases of Android, so if
it's Android you're mirroring you might want to look at that.
You can also write a custom script to do the mirroring for you. That's
what we do.
> I've definitely tried to RTFM... if only I could FTFM (F=find).
> Pointers most welcome.
Setting up mirrors has been discussed on this list a number of times
before.
--
Magnus Bäck Opinions are my own and do not necessarily
SW Configuration Manager represent the ones of my employer, etc.
Sony Ericsson
git clone https://github.com/crabpot8/mirror-android-repo.git
Some of the instruction are a little out of date i.e. use repo init -u
https://android.googlesource.com/mirror/manifest --mirror
But it should give you enough to get it sorted.