Это не ожидаемое поведение.наконец, не так, как вы написали свой пример:
git checkout -b testbranch devbranch
Это не должно настраивать отслеживание, даже если devbranch
отслеживает удаленную ветвь.
Однако, если вы имели в видуэта команда
git checkout -b testbranch origin/devbranch
Тогда это должно было бы автоматически настроить отслеживание.Как указано в документации :
Это поведение используется по умолчанию, когда отправной точкой является ветвь удаленного отслеживания
Кроме того, вы, вероятно, имеетеустановите branch.autoSetupRebase
на always
или pull.rebase
на true
, поскольку вы получили сообщение «путем перебазирования» (вместо тихого значения по умолчанию для слияния).
Если вы хотите избежать такого поведения, исоздать ветку из того же коммита, на который указывает удаленная ветка, но не отслеживая эту удаленную ветку, вы можете выполнить эту команду
git checkout --no-track -b testbranch origin/devbranch