У меня есть три ветви (назовем их мастером, тестированием и функцией). Все три являются разделяемыми, поэтому я не могу переустановить ни одного из них, не вызывая проблем для других. В настоящее время все три филиала расходятся (ни одна из них не является быстрой перемоткой вперед), поэтому в конечном итоге потребуется некоторое слияние, поскольку перезагрузка не является вариантом.Git merge single file without rebasing
На данный момент я хотел бы извлечь Makefile из тестирования в функцию, так как функция была отключена от мастера, а Makefile был добавлен в тестирование. Однако не хотят объединиться в любые другие изменения между двумя ветвями.
Мое понимание заключается в том, что если я просто добавлю Makefile к функции, это вызовет конфликты слияния, когда я снова объединю функцию в тестирование (а затем мастер), особенно если я сделаю какие-либо дополнительные дополнения к Makefile в моей ветви функции ,
Я мог бы сделать git-cherry-pick; однако в тестировании было много коммитов для Makefile, и я предполагаю, что есть лучший способ, чем пытаться использовать вишню - выбрать все эти коммиты в функции.
Wow - Я использовал checkout как для переключения на фиксацию SHA, так и в файле, возвращаемом обратно в HEAD, но я не понимал, что вы могли бы объединить эти два способа. В ретроспективе это довольно очевидно, но спасибо! – chimeracoder