В качестве контекста и напоминания:
- Коммиты в Git представляют собой связанный список, каждый коммит содержит хэш своих родителей
- Ветви - это метка для определенных коммитов (под капотом ветвь - это файл с именем в качестве имени ветви и в качестве содержимого хэш коммита, на который она указывает
Команда git branch -a --merged master
дает вам все ветви (локальные и удаленные, из опции -a
, --all
), которые доступны из ("объединены") master
(из опции --merged master
) , Это означает, что все ветви, которые указывают на коммиты, которые являются предками (родители / бабушки / дедушки / хозяева).
Термин --merged
слегка вводит в заблуждение, поскольку он не обязательно означает, что ветви были объединены (с фиксацией объединения и т. Д.) В master.
EDIT:
Из вашего вопроса в комментариях:
Я хочу знать, были ли мои локальные ветви уже объединены с удаленным мастером и отправлены в удаленный репозиторий.
Ваши филиалы объединены с удаленным мастером:
git branch --merged origin/master # Here do your branches appear?
Переносятся ли ваши ветки в удаленный репозиторий:
git branch -r # Here do your branches appear?
git branch -v # This will show your for each branch if they are ahead, behind or both. This works only if their upstream is set.
Для получения дополнительной информации: man git-branch
.