Если вы не хотите объединяться, вы можете просто git fetch yourremote/yourbranch
, спецификация удаленного / ветвления обычно равна origin/master
. Затем вы можете проанализировать вывод команды, чтобы увидеть, действительно ли присутствуют новые коммиты. Вы можете ссылаться на последний извлеченный коммит как yourremote/yourbranch
или, возможно, по symref FETCH_HEAD
.
Примечание: Мне напомнили, что FETCH_HEAD
относится к последней выбранной ветви. Следовательно, в общем случае вы не можете полагаться на git fetch yourremote
с FETCH_HEAD
, поскольку первый выбирает все отслеживаемые ветви, поэтому последний может не относиться к yourbranch
. Кроме того,
- В итоге вы получаете больше, чем строго необходимо.
- также см. ответ Джефроми , чтобы просмотреть, но фактически не загруженные изменения
- следующие форматы не обязательно являются самыми компактными, просто читаемые примеры.
Тем не менее, вот несколько вариантов проверки обновлений удаленной ветви, которые мы будем обозначать yourremote/yourbranch
:
0. Обработка ошибок в следующих операциях:
0.1 Если вы попытаетесь git fetch yourremote
, а git
выдаст ошибку, такую как
conq: repository does not exist.
это, вероятно, означает, что вы не определили эту удаленную строку. Проверьте заданные вами удаленные строки с помощью git remote --verbose
, затем git remote add yourremote yourremoteURI
, если необходимо.
0.2 Если git
выдает ошибку типа
fatal: ambiguous argument 'yourremote/yourbranch': unknown revision or path not in the working tree.
это, вероятно, означает, что у вас нет yourremote/yourbranch
локально. Я оставлю это кому-то более знающему, чтобы объяснить, что значит иметь что-то удаленное локально :-), но здесь скажу только, что вы должны быть в состоянии исправить эту ошибку с помощью
git fetch yourremote
, после чего вы сможете успешно повторить желаемую команду. (При условии, что вы правильно определили git remote yourremote
: см. Предыдущий элемент.)
1. Если вам нужна подробная информация, git show yourremote/yourbranch
и сравните ее с текущей git show yourbranch
2. Если вы хотите увидеть различия, git diff yourbranch yourremote/yourbranch
3. Если вы предпочитаете сравнивать только по хешу, сравните git rev-parse yourremote/yourbranch
с git rev-parse yourbranch
4. Если вы хотите использовать журнал для отслеживания произошедшего, вы можете сделать что-то вроде git log --pretty=oneline yourremote/yourbranch...yourbranch
(обратите внимание на использование три точек).