как синхронизировать репо зеркало с новым репозиторием - PullRequest
2 голосов
/ 30 августа 2011

У меня есть зеркальный сервер репо (myrepo), который был изначально создан для зеркалирования и синхронизации с удаленным компьютером (repoA).То есть я использовал что-то вроде следующего:

cd myrepo
repo init -u git://repoA-server/manifest.git --mirror
repo sync

... затем я изменил строку выборки файла манифеста, чтобы использовать сервер myrepo, чтобы пользователи могли клонировать из зеркала myrepo

сейчас репо ушел и больше не существует.Он был заменен новым сервером repoB с другим URL-адресом, который изменил некоторые ветви и использует новый файл манифеста для этих ветвей.

Как я могу повторно синхронизировать мое зеркало myrepo с этим новым repoB?Я не хочу сдуть мое мирепо и просто создать новое зеркало.Я хочу сохранить его историю и просто обновить некоторые ветви, чтобы теперь отслеживать из repoB, и использовать новый файл манифеста (который я снова изменю для получения проектов из myrepo).

Я не уверен, как это сделать?Я задаюсь вопросом, могу ли я просто внести некоторые изменения в myrepo, а затем просто запустить 'repo sync', чтобы синхронизировать его с новым зеркалом (т.е. выполнить выборку / слияние для ветвей обновлений)?Или я должен клонировать myrepo, затем сделать что-то вроде добавления repoB в качестве удаленного, создать ветви отслеживания, выбрать / объединить себя и попытаться передать это в myrepo?

1 Ответ

1 голос
/ 30 августа 2011

и измените URL / пути в файле конфигурации:

.git/config

Это был бы самый быстрый способ. Хотя вы можете обратиться к каждой настройке ветки с помощью команд.

Кроме того, обратите внимание, что вы не потеряете историю, если от нее откажетесь, если они синхронизированы. Вы потеряете ваши reflog и rr-cache среди прочего.

надеюсь, это поможет.

Адам

...