У меня есть 2 ответвления в репозитории git, позволяет называть их, dev и test. У меня есть изменения в одном файле, somecode.js. Обе ветки имеют изменения в somecode.js. 2 ветки значительно расходятся (но управляемы), поэтому прямого "слияния" недостаточно.
Я пробовал http://jasonrudolph.com/blog/2009/02/25/git-tip-how-to-merge-specific-files-from-another-branch/, но не сливает содержимое обоих файлов. В основном вы просто пишете файл вместо фактического слияния содержимого файла.
Я также пробовал:
git checkout -b newbranch
git checkout test somecode.js
git commit -m "somecode changes from newbranch"
git checkout dev
git merge newbranch
и
git checkout -m test somecode.js
(Я действительно надеялся на -m для слияния, но, похоже, он не работал у меня...)
Я думал, что я близок к тому, что мне нужно, но потом понял, что он просто переадресовал значение фиксации, которое он не слил, он написал поверх исходного файла в тесте.
Итак, чтобы повторить, как я могу объединить определенный файл из одной ветки в другую ветвь, не просто записывая файл в ветке, я сливаюсь с использованием git.