У меня есть хранилище Git. Этот репозиторий имеет несколько удаленных репозиториев (я думаю). Как я могу получить список удаленных репозиториев, которые принадлежат указанному репозиторию?
Как git list --remotes
или что-то подобное?
Вы можете получить список любых настроенных удаленных URL-адресов с помощью команды git remote -v
.
Это даст вам что-то вроде следующего:
base /home/***/htdocs/base (fetch)
base /home/***/htdocs/base (push)
origin git@bitbucket.org:*** (fetch)
origin git@bitbucket.org:*** (push)
git remote -v
потому что -v для многословия.git remote
дает простой список пультов (база, источник в этом случае). Опция -v включает URL для операций извлечения и отправки каждого пульта.-v
для "многословный" на самом деле является более распространенным вариантом. Это также поддерживаетсяgit branch
. Основное различие заключается в коротких и длинных опциях (по существу, одинарный или двойной тире). Тем не менее, поддержка --list с помощьюremote
подкоманды будет иметь смысл. Если вы действительно этого хотите, я бы сказал, отправить запрос на функцию.Если вам нужны только имена удаленных репозиториев (а не каких-либо других данных), достаточно простого
git remote
.источник
FWIW, у меня был точно такой же вопрос, но я не мог найти ответ здесь. Это, вероятно, не переносимо, но по крайней мере для gitolite, я могу запустить следующее, чтобы получить то, что я хочу:
источник
Ответы пока говорят вам, как найти существующие ветви:
Или репозитории для того же проекта [см. Примечание ниже] :
Есть еще один случай. Возможно, вы захотите узнать о других репозиториях проектов, размещенных на том же сервере.
Чтобы узнать эту информацию, я использую SSH или PuTTY, чтобы войти на хост и
ls
найти каталоги, содержащие другие репозитории. Например, если я клонировал репозиторий, набрав:и чтобы узнать, что еще доступно, я захожу на git.mycompany.com через SSH или PuTTY и набираю:
при условии,
ls
говорит:Я могу использовать команду
получить доступ к другому проекту.
источник
Простой способ увидеть удаленные ветви:
Чтобы увидеть местные филиалы:
источник
git ls-remote
должен показать вам все пульты, доступные для загрузки с вышестоящего сервера ( git-scm.com/docs/git-ls-remote ). Я полагаю, что все ответы на этой странице говорят только о том, как составить список удаленных и отслеживающих веток, которые вы уже получили, то есть Catch-22. Вы не можете получить пульт, пока не узнаете, как обращаться к нему на вышестоящем сервере.Ни один из этих методов не работает так, как просит спрашивающий, и в котором я часто нуждался. например:
Весь смысл в том, что у вас нет никакой информации, кроме удаленного пользователя и сервера, и вы хотите узнать, к чему у вас есть доступ.
Большинство ответов предполагают, что вы запрашиваете из рабочего набора git. Спрашивающий предполагает, что вы не.
В качестве практического примера предположим, что на сервере был репозиторий foo.git. Кто-то в своей мудрости решает, что нужно изменить его на foo2.git. Было бы неплохо сделать список каталогов git на сервере. И да, я вижу проблемы для мерзавца. Хотя все равно было бы неплохо.
источник