intermediate

Разрешение конфликтов

Разрешайте текстовые и семантические конфликты с локальной проверкой и пониманием intent обеих веток.

Разрешение конфликтов — семантическая работа, не только `ours` или `theirs`. Поймите intent обеих веток, уберите текстовые маркеры, проверьте взаимодействия, перегенерируйте артефакты source of truth и проверьте тестами.

					git merge origin/main
# правка файлов, удаление <<<<<<<
git add path/to/file.ts
git commit
				

| Тип конфликта | Типичный подход | |---------------|-----------------| | Исходный код | Логика с учётом обоих intent | | Lockfile | Перегенерация менеджером пакетов | | Generated code | Повторный запуск генератора | | Переименования | `git mv`, проверка импортов |

На интервью: конфликты lockfile, параллельные изменения API, когда звать автора второй ветки, конфликты при merge vs rebase.

Типовые ошибки: слепой выбор одной стороны; ручное редактирование `package-lock.json`; merge без тестов.

Компромисс — скорость (взять одну сторону) против корректности (собрать общий intent).

Чеклист:

  • Intent обеих веток до правок.
  • Перегенерация lockfile и codegen.
  • Фокусные тесты после resolution.
  • Неясную семантику — к авторам.