#git #git-merge #git-cherry-pick
#git #git-merge #git-cherry-pick
Вопрос:
Я работаю над проектом с использованием Moodle 2.9.4
Есть некоторый код, который я хотел бы выбрать из Moodle 3
но я не хочу включать некоторые файлы, обновленные в коммиты.
В конечном итоге проект будет обновлен до Moodle 3 с помощью git merge
Будут ли исключенные файлы включены в слияние?
Если нет, то какое лучшее решение?
Ответ №1:
Я вижу два способа понять ваш вопрос:
Будут ли файлы, пропущенные в git cherry-pick, включены в более позднее слияние git?
Если я исключу их из cherry-pick, будет ли слияние по-прежнему добавлять их?
ДА
Будут ли файлы, пропущенные в git cherry-pick, включены в более позднее слияние git?
Возникнут ли у меня проблемы с этими файлами при слиянии, если я исключу их из cherry-pick?
НЕТ
Git заботится только о changes
so cherry-pick — это просто копирование нескольких changes
из ветки в другую. Исключая некоторые файлы из коммита, которые вы фактически исключаете changes
, чтобы упростить последующее слияние.
Если вы когда-либо объединитесь с Moodle 3, у вас могут возникнуть конфликты слияния с changes
тем, что вы выбрали из Moodle 2, если ветка Moodle 3 вносит дополнительные changes
изменения в эти изменения после того, как вы их выбрали.
TL; DR: чем меньше изменений вы выбираете, тем легче это может быть в будущем, так что, на мой взгляд, это хорошая стратегия для исключения ненужных файлов из процесса выбора.
(Мне нравится, чтобы мои ответы были короткими, но не стесняйтесь спрашивать о большей точности, если есть что-то, чего вы не поняли. )