Создавать, удалять, переключаться между ветками я умею. Для чего нужны ветки - я вроде как понимаю, но не до конца.
Когда лучше использовать их? Лучше одну ветку использовать под каждую новую задачу или для каждого отдельного программиста?
Представим что у нас есть команда бэков и фронтов. Одни делают бэк, другие фронт, пока логично. Лучше создать две ветки, для всех бэков и для всех фронтов или лучше создать для каждого отдельного программиста свою ветку? Как правильнее и удобнее будет?
На каждую задачу своя ветка. Если фронт с бэком работают над одной задачей, но не сильно зависят друг от друга (например фронт работает с тестовыми данными), то это 2 ветки. Потом одну вливаем в другую и доводим до завершения.
Все просто
У тебя есть проект.
Ты решил допилить новую фичу.
Создаёшь ветку и допиливаешь в ней фичу, тестишь результат на ошибки в случае если все ок мержишь с основной.
Цель веток в данном случае не сломать код который в продакшне используется.