Я не совсем понимаю принцип работы с Git в моём проекте.
В проекте имеются ветви: master, dev, release и features. Я создал feature от master и, при попытке слияния с dev, вижу, что моя ветка отстаёт от dev на 200 коммитов и имеет множество конфликтов слияния. Как я понимаю, это значит, что ветки qa и master сильно разошлись. Я не могу сделать rebase feature branch от dev, поскольку после тестирования мне нужно будет замержить её в release, которая на данный момент является копией master.
Разве такие конфликты с веткой dev не будут происходить постоянно? Будет ли корректно скопировать мою ветку, а потом сделать rebase от dev для тестирования (но я не уверен, что тестирование будет корректным, если ветки уже разные)?
Я ни разу не работал с Git в команде и в крупных проектах, поэтому не знаю, что нужно делать.
Предположу, что в показанной Вами схеме в ветку release идут только мержи от master, в ветку master - только мержи от dev, а вот в dev создаются feature-ветки. Тогда это имеет смысл