У вас буде "стовбур", тепер його називають "майстер", у вас будуть "гілки", які зараз називаються "голови", і у вас будуть "теги", які ще називаються "тегами", але вони не будуть папками , вони будуть " refs ", мітки на версії, що живуть в окремому просторі імен всередині сховища.
Subversion і Git мають різні способи розгалуження. Основна модель підривної роботи - мати дерево каталогів з єдиною глобальною шкалою часу, і якщо ви хочете розгалужити, ви скопіюєте піддерево в інший каталог.
З іншого боку, Git має дерево каталогів з редакціями, які визначають батьки, але кожна редакція може мати декількох батьків (злиття) та декількох дітей (гілок). Тож замість того, щоб мати каталоги для галузей, ви отримуєте самостійно створені версії. "Refs" - це лише імена, пов'язані з останньою редакцією для даної "гілки".
Ця різниця є основоположною для управління розподіленими версіями. Git (та інші розподілені системи) не мають жодного центрального повноваження зберігати історію лінійно, тому редакції можна створювати незалежно у кількох сховищах, не знаючи один про одного, і система повинна їх вмістити. Виявляється, узагальнення набагато полегшує розгалуження та злиття.
Зауважте, що в Git, редагування не є жодною гілкою. Вони просто є і гілки містять їх. Але як тільки гілка об’єднана або виявиться мертвою алеєю, ви можете просто видалити "ref", що вказує на неї, і зовсім забути про неї (якщо ви відмовитесь від старих випробувань, з часом вони будуть зібрані сміттям git gc
). Це допомагає вам не завалитися в старих експериментах, і ніхто більше не пам’ятає, про що вони йшли.