Как вы можете вытащить только текущую ветку?
есть ли способ настройки конфигурации, чтобы установить это без указания какой ветви?
5 ответов:
Git уже только тянет текущую ветку. Если у вас есть ветвь, настроенная как ветвь отслеживания, вам не нужно указывать удаленную ветвь.
git branch --set-upstream localbranch reponame/remotebranchнастроит отношение отслеживания. Вы тогда выдайтеgit pull [--rebase]и только эта ветка будет обновлена.конечно, все удаленные ветви отслеживания и все ссылки для удаленного будут обновлены, но только ваша локальная ветвь отслеживания будет изменена.
Я просто сделал это таким образом:
git pull origin "$(git branch | grep -E '^\* ' | sed 's/^\* //g')"или
git pull origin $(git rev-parse --abbrev-ref HEAD)это извлекает текущую ветвь из
git branch, и тянет эту ветку из удаленного источника.обратите внимание, что, как сказал Сет Робертсон, когда аргументы не заданы, изменяется только текущая ветвь, но извлекаются все удаленные ветви. Я не хочу получать все удаленные ветви, поэтому я сделал это таким образом.
The
--set-upstreamфлаг устарел и будет удален. Следовательно, используйте--trackили--set-upstream-toпример: Если вы хотите установить информацию отслеживания для этой ветви, вы можете сделать это с помощью:
git branch --set-upstream-to=<remote>/<branch> develop
Да, есть конфиг, который можно изменить в
.gitconfig, например:[push] default = currentкоторый подтолкнет текущую ветвь к обновлению ветви с тем же именем на принимающей стороне.
проверка:
git config --global --get push.defaultпосмотреть: git-config.