Это уже читал. Там предлагают много вариантов. Я, конечно, все не пробовал. Которые пробовал - не работает.
Ага. В одном видосе уже нашёл, что так можно.
Но теперь он выдаёт
PS H:\Projects\CSharp 2019\TikTok downloader\TikTok-downloader> git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/dev
remotes/origin/master
Три последние красным цветом. Это нормально?
Ну это странно, как минимум
То есть, ветка скачиваются только когда делаем git checkout ... на эту ветку?
А что будет, если создать и отправить новые коммиты/ветки при нескачанных ветках?
[color "branch"]
local = yellow
remote = red
plain = normal
Что странного? Веток может быть 100500, зачем качать лишние гигабайты зря.
Странно только что студия их не выводит (или куда-то спрятала).
Это как? Коммиты обычно отправляют из текущей ветки в соотв. ветку на сервере.
Перезаписать коммиты одной ветки на сервере коммитами другой ветки можно только с push --force, и на Гитхабе можно запретить такие деструктивные изменения указанных веток (например, основной).
Ну вот есть ветки master, dev, hotfix. git clone скачает только master. Что будет, если я создам и отправлю новую ветку, не скачивая остальные? Или буду обновлять сразу master (так не делают, но всё-равно)?
Или если попытаюсь создать ветку с названием, которое уже есть?
Это где?
Логично. Но тогда должен быть какой-нибудь ключ, с которым скачаются все ветки А просто не давать такой возможности - это тупо
Он есть частично (pull --all / fetch --all).
Но чтоб именно “скачать все ветки” надо скрипт с циклом типа такого.
Однако почти все из тех, кто это хочет, просто не поняли как гит работает и на самом деле им нужно просто git checkout ...... и git branch -a.
Еще есть --mirror для создания полных копий репозитория (зеркал).
Если в студии сложно работать с ветками, то это проблема студии, а не гита.
Settings → Branches.
checkout же определяет автоматически.
Ну а так говорю ж, при попытке сделать фигню типа замены ветки на сервере другой веткой – не даст если специально не попросить с --force и т.п.
А что не так? Ей и не нужны все ветки, только родитель.
А для чего это нужно? Обычно новые фичи добавляют когда это нужно кому-то и текущие решения не устраивают.
Тут явно не тот случай, когда это чем-то помогло бы.
Для зеркал например сделали специальные опции.
Так делают многие, но не все/не везде. Этот подход решает одни проблемы, но добавляет другие. Для разных ситуаций лучше подходят разные подходы.