Вот один из способов извлечения определенных веток с пульта:
Ссылки (включая ветви), которые выбираются с пульта, управляются параметром конфигурации remote.<remote-name>.fetch
. Например, ваш remote.origin.fetch
, вероятно, является refspec:
+refs/heads/*:refs/remotes/origin/*
... что означает сделать выборку имен всех ссылок под refs/heads/
в удаленном репозитории и сделать их доступными под refs/remotes/origin/
в вашем локальном репозитории. (+
означает принудительное обновление, поэтому ветки удаленного отслеживания могут обновляться, даже если обновление не будет ускоренным.)
Вместо этого вы можете перечислить несколько refspecs, которые указывают конкретные ветви для выборки, например, изменив это с помощью:
git config remote.origin.fetch +refs/heads/master:refs/remotes/origin/master
git config --add remote.origin.fetch +refs/heads/blah:refs/remotes/origin/blah
... и тогда в следующий раз будут выбраны только master
и blah
.
Конечно, у вас уже есть много удаленных веток, и gitk
все равно покажет их. Вы можете удалить все, что вас не интересует:
git branch -r -d origin/uninteresting