1) Да
2) Нет, на сервер изменения идут через push
, т.е. даже commit
- локально.
3) Ветка от ветки будет, в вашей терминологии, подветкой. Это определяется коммитом-родителем, общим для двух веток, от которого "отпочковалась" новая ветка. Если он был веткой, то это подветка =) Но, по сути, никакого четко определенного "ствола" в GIT нет, master
- это такая же ветка, как и остальные.
4) Не знаю, но мне "@@
" кажется просто разделителем.
5) Автоматически мержатся изменения в непересекающихся частях документа. Допустим, если поредактировали начало и конец. Если изменения было в одной и той же части, то тому, кто не успел сделать push
придется разрешать конфликт. Так что не обязательно.