Интервал изменения списка синхронизации git p4
Моя цель состоит в том, чтобы синхронизировать репозиторий из p4 с использованием интервала списков изменений, чтобы первая версия списка изменений репозитория рассматривалась как начальная фиксация. Поэтому я использовал следующую команду:
git p4 clone //path-to-project@cl1,cl2
где cl1
а также cl2
номера упомянутых списков изменений.
И когда это закончилось, файлы, которые были созданы до cl1
не были в HEAD
,
Проблема, на мой взгляд, состоит в том, что перед синхронизацией изменений в заданном диапазоне задача p4 не синхронизируется с cl1
версия репо и применяет коммиты к пустому репозиторию.
Это ошибка или мое недопонимание того, как должен работать git p4? И как мне сделать это правильно?
UPD: причина, по которой мне нужен интервал списка изменений, заключается в том, что существует проблема с базой данных p4, и я не могу извлекать списки изменений раньше, чем в прошлом. И я хотел бы перейти на Git со всей доступной историей.
2 ответа
Я думаю, что, кроме специального импорта только опции по умолчанию для версии заголовка, опции @cl1,cl2 импортируют только списки изменений, а не состояние хранилища в этих списках изменений.
Я думаю, вам придется сделать @all, чтобы получить полную историю. Или измените git-p4, чтобы делать то, что вы хотите.
Моя цель состоит в том, чтобы синхронизировать репозиторий из p4 с использованием интервала списков изменений, чтобы первая версия списка изменений репозитория рассматривалась как начальная фиксация.
Когда вы впервые клонируете свой репозиторий с git-p4
изменение, от которого вы клонируете, уже рассматривается как начальная фиксация. То есть,
git p4 clone //path-to-project@cl1
сам должен делать то, что хочешь.
Непонятно, почему вы пытаетесь использовать диапазон ревизий (cl1,cl2
) поскольку в описании вашей проблемы не упоминается cl2
совсем.