У меня есть родительское репо, содержащее мой проект, и вспомогательное репо, основанное на этом проекте.Слияние из восходящего потока без истории восходящего потока
Родительское репо имеет помеченные выпуски, а вспомогательное репо основывается на одном из этих тегов. Например:
parent v1.0---v2.0---v3.0
\
child---[changes]
К сожалению, когда был создан ребенок репо, родительская история была удалена и репо был реинициализирован с файлами, добавленных с нуля. Таким образом, это означает, что ни одна из истории родительского репо не содержится в дочернем репо, а скорее одна фиксация в начале указывает, что она основана на теге родительского v2.0, где все файлы v2.0 были git add
ed.
Есть ли способ использовать Git для объединения восходящих изменений от родительского (например, тега v3.0) обратно в дочерний элемент, несмотря на отсутствие родительской истории?
git pull
говорит мне, что нет общих коммитов, поэтому он не знает, с чего начать слияние. Нужно ли переписывать историю ребенка, чтобы добавить историю родителя назад?
Очевидно, что это странно сценарий, и не один я позволю в будущем :)
Можете ли вы показать выход Git pull?Я попытался вытащить из удаленной ветви без каких-либо общих коммитов, и она сливается отлично. –
@JonasBerlin Я думаю, что вы правы на самом деле - извиняетесь, поскольку я действительно пытался сделать патч на изменениях между версиями v2.0 и v3.0, которые не удались. Спасибо, что заставил меня попробовать git pull (и извините за то, что я не написал вопрос правильно, изначально - я просто предположил, что попытка потерпит неудачу, как это сделал патч) – joshschreuder
@JonasBerlin фактически это не делает именно то, что я хотел, и не хотел действительно работают для обновлений - из-за отсутствия истории каждый измененный файл появляется как конфликт слияния. Новые добавленные файлы в порядке, но, очевидно, Git должен иметь возможность разрешать слияния, если для этого есть история. Спасибо, но я думаю, что мой вопрос все еще действителен – joshschreuder