Это означает, что удаленные филиалы доступны, но у вас нет их в качестве локальных филиалов.Вы должны быть в состоянии получить их с помощью git fetch:
git fetch origin [remote-branch]:[new-local-branch]
т.е.
git fetch origin BRANCH_1:BRANCH_1
Вот скрипт bash, который я использовал ранее для передачи репозиториев SVN в git.Это даст вам чистое git-репо на компьютере, на котором он запущен в текущем каталоге:
#!/bin/bash
REPO=$1
REPO_tmp=$REPO"_tmp"
USERFILE="/tmp/users.txt"
echo $REPO " > " $REPO_tmp
mkdir $REPO_tmp
cd $REPO_tmp
echo `pwd`
svn log http://URLTOSVN/$REPO|grep \| | awk 'BEGIN { FS = "|" }; {print $2}' | awk '{print $1 " = " $1 " <" $1 "@domain.com>"}' | sort | uniq > $USERFILE
git svn init http://URLTOSVN/$REPO --no-metadata
git config svn.authorsfile $USERFILE
git svn fetch
cd ..
git clone --bare $REPO_tmp $REPO.git
Это также сохранит вашу историю журналов svn.Вам, вероятно, придется поиграться с параметрами соединения, так как я использовал svn + ssh, а не http.Глядя на репо, которое я импортировал, а затем клонировал, у которого были филиалы, я вижу примеры, подобные этому:
git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/signup
В вашем голом репо ветви должны просто иметь свое имя.то есть:
git branch -a
* master
BRANCH1
BRANCH2
Однако я обнаружил, что смог создать ветку с именем remotes / branch1, поэтому может случиться так, что у вас действительно есть локальные ветки с просто странным именем.Вы можете попробовать swicthing с:
git checkout remotes/BRANCH_2