Использование веток
Рано или поздно в любом проекте возникает ситуация, когда требуется заморозить изменения, но продолжать работать, а на замороженные изменения накладывать только баг-фиксы. Для этой цели служат ветви (branch)
В гите можно создать ветку от любого места. Для создания ветки от основного дерева надо выполнить следующую команду:
git checkout --track -b name_of_newbranch origin/master
В результате этой команды вы увидите примерно такое сообщение:
Branch name_of_newbranch set up to track remote branch refs/remotes/origin/master.
Switched to a new branch "name_of_newbranch"
Это значит, что в локальном репозитории у вас создалась новая ветка.
Если в этой команде заменить origin/master на origin/remote_branch_name, то вы создадите ветку от ветки origin/remote_branch_name.
Чтобы ваша ветка была видна всем, ее требуется пропихнуть в удаленный репозиторий. Делается это так:
git push origin local_branch_name:remote_branch_name
Разумеется, надо также уметь и получать ветки в свое распоряжение:
git branch local_branch_name origin/remote_branch_name
git checkout local_branch_name
В результате вы получите искомую ветку после следующего сообщения:
Switched to branch "local_branch_name"