Как читать эту распечатку Git, имея путаницу с удаленным репозиторием / локальной веткой - PullRequest
1 голос
/ 01 мая 2019

Я не уверен, что эта распечатка Git говорит мне о моем локальном отслеживании филиала / удаленного репозитория.Как я могу прочитать это?

У меня есть 2 локальные ветви:

  • 'master' дорожки для удаленного хранилища под названием 'origin.'
  • 'melmaster' дорожкив удаленный репозиторий caelt.

Когда я набираю команду git remote show origin, я полностью понимаю распечатку.Когда я набираю команду git remote show caelt, я не совсем понимаю информацию, которую она мне дает.Я положил эти распечатки ниже.

git remote show origin
* remote origin
  Fetch URL: https://github.com/.../UnityCSharpConceptExperiments.git
  Push  URL: https://github.com/.../UnityCSharpConceptExperiments.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (fast-forwardable)

git remote show caelt
* remote caelt
  Fetch URL: https://github.com/CAELT/SimulationAnimation.git
  Push  URL: https://github.com/CAELT/SimulationAnimation.git
  HEAD branch: master
  Remote branches:
    master    new (next fetch will store in remotes/caelt)
    melmaster tracked
  Local branch configured for 'git pull':
    melmaster merges with remote melmaster
  Local refs configured for 'git push':
    master    pushes to master    (fast-forwardable)
    melmaster pushes to melmaster (up to date)

Вопрос 1

Строки,

`Remote branches: 
master    new (next fetch will store in remotes/caelt)`

, говорят о том, что в репозитории caelt есть удаленная ветвь с именем master?Отличается ли это от моей локальной ветки, которая называется 'master?'

Вопрос 2

Почему говорится, что следующая выборка будет храниться в remotes / caelt?Разве не получить то же самое, что тянуть?И в этом случае я не буду извлекать из 'remotes / caelt' и хранить в местном филиале 'melmaster'?НЕ хранит IN 'remotes / caelt?'

Вопрос 3

Что касается строк,

 Local refs configured for 'git push':
    master    pushes to master    (fast-forwardable)
    melmaster pushes to melmaster (up to date)

Это говорит о том, что моя локальная ветвь 'master' отправляет в хранилищеветка 'caelt' / master 'или ветка репозитория' origin / master '?Я хочу, чтобы локальная ветка 'master' отправляла в репозиторий 'origin' в origin / master.Я НЕ хочу, чтобы локальная ветвь 'master' отправляла в репозиторий 'caelt' в caelt / master (если действительно есть ветка с именем master в репозитории caelt).Как я могу определить, к какому мастеру это относится?

Вопрос 4

В каждой распечатке есть строка

HEAD branch: master

, относящаяся к ветви моего локального диска, котораяЯ настроил как ГОЛОВУ?Или это относится к ветви в удаленном хранилище, которое было настроено в удаленном хранилище как HEAD?

1 Ответ

1 голос
/ 02 мая 2019

Вопрос 1.

Да.

Удаленные ветви всегда отличаются от локальных ветвей.По умолчанию удаленные ветки находятся в вашем локальном хранилище с именем remotename/branchname.

Например, если удаленный «caelt» имеет ветку «master», он будет сохранен в вашем локальном хранилище как ветка «caelt / master».

Вопрос 2.

git pull - это просто комбинация git fetch и git merge.Поэтому, если вы потянете, сначала выполняется стандарт git fetch.После этого, если ваша текущая локальная ветвь имеет значение «master», а master ветки настроен на использование восходящего потока «caelt / master», выполняется git merge caelt/master.

Вопрос 3.

Просто выполните git config -l | grep branch.master и посмотрите, что вы получаете.

...