Можно ли объединить предыдущую ветку и разрешить конфликты с текущей веткой?
У меня есть сценарий, когда коллега не может получить доступ к нашему удаленному репозиторию и поэтому должен был внести изменения в файлы в копии проекта. Теперь я хочу объединить эти файлы в новой ветке обратно в проект; тем не менее, были и другие работы с этими файлами.
Я подумал о том, чтобы отойти от современного мастера, засорять старые файлы в новой ветке работой коллеги, а затем вернуться из главы предыдущей ветки. В идеале я бы мог вручную подтвердить конфликты. Это будет иметь структуру вроде:
o-------o-------o-------o
/ / \
/ / \
--------o---------------+-------------o----->
, где не было никаких изменений в исходной ветви в +, где я хочу слиться отсюда с новой веткой.
Когда я пытаюсь выполнить слияние с исходной веткой, я получаю сообщение «Все файлы обновлены».
EDIT:
Фактическая структура правок немного отличается от изображения выше, она ближе к:
------A-----B--------+----> dev branch
| \ \
| B'---C`--D--> new branch with changes
|
A`----C changes made outside Git
где A` - копия проекта в A, B - изменения, которые я сделал в Git, C - изменения, сделанные моим коллегой вне Git, а C` - состояние ветви после того, как я скопировал его изменения. in. D - результирующее слияние с исходной веткой, в которой я хочу выбрать конфликты.
Однако вместо D я просто получаю C, без изменений. Я полагаю, что это может быть связано с тем, что состояние ветви при копировании равно B, и, следовательно, Git видит новые файлы как простой набор добавлений и удалений, и ничего сложного автоматически не разрешается.