У меня есть две ветви, которые достаточно различны, и кажется, что перебазировка не работает - или я не знаю, как это сделать.
У меня есть "открытая" ветвь с удаленной кучей файлов (с использованием filter-branch). Несмотря на то, что большинство коммитов совпадают с точки зрения дельт, идентификаторы коммитов разные. Я попробовал довольно много способов перенести изменения из моей ветки разработчика в мою публичную ветку ... Мне трудно поверить, что она может делать то, что я хочу, но я подозреваю, что просто не знаю, как это сделать. сделай это. В любом случае, это работает нормально, но кажется неправильным.
git checkout dev
git format-patch --stdout last_sync_tag > catchup.mbox
git checkout public
git am catchup.mbox
git --skip # talks about a missing file
git --skip # talks about a missing file
git --skip # talks about a missing file
Любые советы или предложения, которые, вероятно, будут включать не разветвление фильтра в файлах, которые вам не нужны в публичной ветке (хотя, как вы тогда избавитесь от них?), Приветствуются.
Мои деревья выглядят примерно так:
dev: a-b-c-d-e-f-g-h-i-j-k
pub: t-u-v-w-x
t ≅ a, u ≅ c, v w d, w ≅ e, x ≅ g. i, j, k - новые патчи, которые я бы хотел перенести.
checkout pub
rebase --onto pub i # I really expected this to work