Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to "repo init" on a disconnected system?

Tags:

repository

I have mirrored a repository with

repo init -u <uri of manifest> --mirror
repo sync

and copied it (by usb) to a system disconnected from the internet along with the repo script and the repo clone bundle repository from https://gerrit.googlesource.com/git-repo/clone.bundle.

I now want to create new client from the mirror, but when I run the command.

repo init -u <uri of manifest on mirror>

i get the following error.

fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [Errno -2] Name or service not known

So I have the clone.bundle but have no way to persuade repo to use it.

Any suggestions?

like image 632
OwainD Avatar asked Sep 19 '13 13:09

OwainD


People also ask

How do I force sync a repository?

By default, all projects will be synced. The --fail-fast option can be used to halt syncing as soon as possible when the first project fails to sync. The --force-sync option can be used to overwrite existing git directories if they have previously been linked to a different object directory.

What is the difference between git clone and repo init?

git init vs.git clone is used to create a copy of an existing repository. Internally, git clone first calls git init to create a new repository. It then copies the data from the existing repository, and checks out a new set of working files.

Does repo sync overwrite local changes?

repo sync does not overwrite local changes, so I don't think you're doing what you think you're doing. Can you give us a more detailed example of how you're using the command?


2 Answers

There is an option, that appears to be totaly undocumented on the internet for repo. It is --repo-url which allows you to overide where repo looks for the latest version of itself.

This is what I did:

I had the bundle saved in my home as git-repo-clone.bundle

repo init -u < uri of manifest on mirror > --repo-url ~/git-repo-clone.bundle

I found this out by reading the repo script itself, and thought I would share.

like image 78
OwainD Avatar answered Sep 19 '22 17:09

OwainD


There is an option to ignore the clone bundle.

repo init -u <your-manifest-mirror-url> --no-clone-bundle
like image 23
Mr.Hem Avatar answered Sep 20 '22 17:09

Mr.Hem