2014-11-21 4 views
0

Так что я искал способ увидеть список всех ветвей, которые существуют на пульте дистанционного управления, и нашел следующие 2 команд:мерзавец филиал -r против мерзавцев удаленного шоу происхождения

1. git branch -r 2. git remote show origin

Что разница между двумя командами?

ответ

5

Команда git branch ищет (или вызывается по-разному, модифицирует) информацию о вашем собственном репозитории. Для филиалов удаленного отслеживания (git branch -r) это показывает, что в вашей кешированной копии того, что было на пульте дистанционного управления, в последний раз, когда у вас был git, свяжитесь с этими пультами и получите обновления.

Команда git remote show name, по умолчанию, работает git ls-remote, который на самом деле вызывает сервер пульта дистанционного управления через Интернет-телефон (или любой другой транспорт вы используете) и получает из него информацию прямо сейчас. Это то, что будет помещено в вашу кешированную копию, если вы запустили git fetch. (Обратите внимание, что если вы сделаете, запустите git fetch, после чего то, что вы получите к тому времени, может быть совершенно другим, так как даже несколько миллисекунд может быть достаточно времени, чтобы иметь массовые изменения. Все зависит от того, насколько активен пульт.)

Вы можете сообщить git remote show, чтобы использовать только свою кешированную копию, вместо того, чтобы вызывать пульт дистанционного управления на интернет-телефоне. В этом случае две команды используют одну и ту же базовую информацию (но представляют ее совсем по-другому). git remote show призван помочь вам показать, что делать fetch и push, а git branch -r просто перечисляет то, что находится в вашем кеше).

Смежные вопросы