Ответ 1
Вы хотите использовать rebase. При извлечении BranchB выполните
git rebase BranchA
Имеют структуру следующих ветвей:
master
/ \
BranchA BranchB
Но это должно быть:
master
/
BranchA
/
BranchB
Может ли кто-нибудь советовать, как повторно вставить BranchB в качестве дочернего элемента BranchA?
Вы хотите использовать rebase. При извлечении BranchB выполните
git rebase BranchA
git checkout branchB; git rebase branchA;
сделает это за вас. Имейте в виду, если это было перенесено в другое место, вы испортите историю.