На сторінці довідника на git-merge є декілька стратегій злиття, які ви можете використовувати.
вирішити - це може вирішити лише дві голови (тобто поточну гілку та іншу гілку, з якої ви витягли) за допомогою 3-х алгоритму злиття. Він намагається ретельно виявити двозначні незрозумілі злиття і вважається загалом безпечним і швидким.
рекурсивний - це може вирішити лише дві голови за допомогою 3-х алгоритму злиття. Коли існує більше одного спільного предка, який може бути використаний для тристороннього злиття, він створює об'єднане дерево спільних предків і використовує це в якості еталонного дерева для тривимірного злиття. Повідомлялося, що це призводить до меншої кількості конфліктів злиття, не викликаючи помилок злиття за допомогою тестів, зроблених на фактичних комісіях злиття, взятих з історії розробки ядра Linux 2.6. Крім того, це може виявити та обробити злиття, що включають перейменування. Це стратегія злиття за замовчуванням під час витягування або об'єднання однієї гілки.
восьминога - це вирішує більше, ніж двоголовий випадок, але відмовляється робити складне злиття, яке потребує ручного дозволу. Він в першу чергу призначений для використання для згуртування головок галузей тематики разом. Це стратегія злиття за замовчуванням при витягуванні або злитті декількох гілок.
наша - Це вирішує будь-яку кількість голів, але результатом злиття завжди є поточна голова філії. Він призначений для використання для витіснення старої історії розвитку бічних гілок.
subtree - Це модифікована рекурсивна стратегія. При злитті дерев A і B, якщо B відповідає піддереву A, B спочатку коригується відповідно до структури дерева A, замість зчитування дерев на тому ж рівні. Це коригування також робиться для звичайного дерева предків.
Коли я повинен вказати щось інше, ніж за замовчуванням? Які сценарії найкращі?