Если ваш Git достаточно новый (2.7.0 или новее), используйте git branch --points-at
.Если у вас нет зеркального клона, вам также придется использовать -r
, чтобы смотреть на имена удаленного отслеживания, а не на имена ветвей.Вам также нужно будет git fetch
все имена.Вы можете использовать поверхностную выборку, если вас интересует количество коммитов и других объектов, которые это принесет.
Обратите внимание, что это не поможет, если новые коммиты были добавлены после запроса на получение, напримерчто имя теперь указывает на коммит, который во время коммита был только в будущем.Он также не может устранить неоднозначность в случаях, когда несколько имен веток указывают на один и тот же коммит, и это не редкость.
Вы можете достичь всех этих одинаковых вещей, используя имена и хэш-идентификаторы, которые выделяютсяиз git ls-remote
, но для этого требуется написать немного кода, а не просто использовать git branch --points-at
.Запустите git ls-remote
, чтобы увидеть, что он печатает (все, что он делает, это печатает ссылки на другие Git и идентификаторы хеша, полученные в результате первого шага git fetch
, если вы запустите git fetch
).
В конечном счете, любые ответы, которые вы получите, являются в лучшем случае подозрительными.Вероятно, это неправильный способ делать то, что вы пытаетесь достичь.