Лучшая команда для запуска git remote show [remote]
. Это покажет все ветви, удаленные и локальные, отслеженные и неотслеживаемые.
Вот пример из проекта с открытым исходным кодом:
> git remote show origin
* remote origin
Fetch URL: https://github.com/OneBusAway/onebusaway-android
Push URL: https://github.com/OneBusAway/onebusaway-android
HEAD branch: master
Remote branches:
amazon-rc2 new (next fetch will store in remotes/origin)
amazon-rc3 new (next fetch will store in remotes/origin)
arrivalStyleBDefault new (next fetch will store in remotes/origin)
develop tracked
master tracked
refs/remotes/origin/branding stale (use 'git remote prune' to remove)
Local branches configured for 'git pull':
develop merges with remote develop
master merges with remote master
Local refs configured for 'git push':
develop pushes to develop (local out of date)
master pushes to master (up to date)
Если мы просто хотим получить удаленные ветки, мы можем использовать grep
. Команда, которую мы хотели бы использовать:
grep "\w*\s*(new|tracked)" -E
С помощью этой команды:
> git remote show origin | grep "\w*\s*(new|tracked)" -E
amazon-rc2 new (next fetch will store in remotes/origin)
amazon-rc3 new (next fetch will store in remotes/origin)
arrivalStyleBDefault new (next fetch will store in remotes/origin)
develop tracked
master tracked
Вы также можете создать псевдоним для этого:
git config --global alias.branches "!git remote show origin | grep \w*\s*(new|tracked) -E"
Тогда вы можете просто бежать git branches
.
git fetch
иgit remote update
не забираете все ветви пульта? Потому что в противном случае вы можете просто получить и использоватьgit branch -r
...