
Во-первых, я только начал изучать git.
Я хочу объединить красную ветку с остальными, но кнопки объединения нет.
На самом деле, по сути, я не знаю, почему они разделены.

Если это репозиторий, о котором вы не знаете, спросите команду, которая его поддерживает, почему ветка осиротела, это не «происходит» без причины, и могут существовать рекомендации по рабочему процессу для решения этой ситуации.





git status.
Если вы не находитесь в той ветке, в которую хотите объединиться (т. е. в принимающей ветке), переключитесь на эту ветку, используя git switch [branchname], например. git switch maingit merge [branchname], например. git merge featureAЯ не знаю, почему они разделены.
В вашем случае красная ветка orphan branch, поэтому она отдельная.
Короче говоря, сиротская ветвь не имеет одного и того же предка, что и другие ветви.
Вы можете Google для получения более подробной информации.
Чтобы объединить потерянную ветку, вы должны добавить следующий флаг --allow-unrelated-histories в команду git merge.
например. git merge featureA --allow-unrelated-histories
Вышеуказанные шаги объединяют ветку с именем featureA в ветку main.
Вот хорошая статья, если вы хотите узнать больше о слиянии.
Примечание:
А. перед слиянием убедитесь, что все изменения зафиксированы.
Б. будьте осторожны: может возникнуть конфликт слияния. В этом случае эта статья может помочь.
А для разрешения конфликтов рекомендую использовать KDiff3.