А чтобы связать ветки используется такая команда
git branch --set-upstream-to=<внешний-репозиторий>/<внешняя-ветка> <локальная-ветка>
---------
Но ты всё усложняешь. Если зачем-то вручную создал ветку, то и связь настроить придётся руками. Из вопроса не до конца понятно, что конкретно ты сделал. Предположу что ты клонировал на сервер свой репозиторий.
git clone <URL>
Такая команда автоматически создаст remote с именем origin в которой будет храниться
URL вышестоящего репозитория, распакует главную ветку origin/main в локальную ветку main и сразу создаст связь между ними.
Ты хочешь распаковать какую-то другую ветку и делаешь это сложным путем?
git branch feature # создать пустую ветку с именем feature
git switch feature # переключиться в эту новую ветку
# но свежесозданная ветка не связана ни с какой внешней, поэтому следующей командой
# придётся указать откуда и что скачивать
git pull origin feature # влить внешнюю ветку origin/feature в текущую локальную ветку
# но проще ветки сначала связать
git branch --set-upstream-to=origin/feature feature
# и тогда заработает простой pull
git pull
Но тебе всё это не нужно на самом деле!
Достаточно после клонирования просто написать
git switch origin/feature
Одна строчка сделает всё вышеперечисленное. Создаст локально ветку с таким же именем, распакует в неё содержимое внешней ветки и создаст связь между локальной и внешней веткой.
Если потом, находясь в этой ветке, выполнишь короткую команду
git pull
, то увидишь что всё связано и скачивается откуда надо.
И даже можно сделать ещё проще. Уже во время клонирования сразу распаковать нужную ветку.
git clone --branch feature <URL>