Skip to main content

Enterprise Server 3.22 в настоящее время доступен в качестве кандидата на выпуск.

Синхронизация ветви в GitHub Desktop

При отправке фиксаций в проект можно сохранить локальную копию проекта GitHubв синхронизации, извлекая из удаленного репозитория.

Platform navigation

Сведения о синхронизации ветвей

Вы можете синхронизировать локальную ветвь с удаленным репозиторием, извлекая все фиксации, добавленные в ветвь GitHub с момента последнего синхронизации. Если вы осуществляете фиксации с другого устройства или в проекте участвуют несколько человек, потребуется синхронизировать локальную ветвь, чтобы обеспечить обновление ветви.

При вытягивании в локальную ветвь вы обновляете только локальную копию репозитория. Чтобы обновить ветвь GitHub, необходимо отправить изменения. Дополнительные сведения см. в разделе Отправка изменений в GitHub из GitHub Desktop.

Чтобы добавить изменения из одной ветви в другую, можно выполнить слияние ветвей. Чтобы применить изменения к ветви из другой ветви в том же репозитории, вы можете объединить другую ветвь в ветвь GitHub Desktop. Чтобы запросить, что изменения из ветви объединяются в другую ветвь, в том же репозитории или в другом репозитории в сети, можно создать запрос GitHub Desktopна вытягивание. Дополнительные сведения см. в статье Слияние другой ветви в ветвь проекта и Запросы на слияние.

Для некоторых рабочих процессов обязательным или предпочтительным является перемещение изменений из одной ветви в другую, а не слияние. При этом вы можете переупорядочивать, изменять фиксации или выполнять их сжатие. Дополнительные сведения см. в разделе О перемещении изменений между ветвями в Git и повторное масштабирование ветви проекта на другую ветвь.

Извлечение из удаленной ветви в локальную

  1. В GitHub Desktopраскрывающемся списке Current Branch выберите локальную ветвь, которую вы хотите обновить.

  2. Чтобы проверить фиксации в удаленной ветви, щелкните "Получить источник"

    Снимок экрана: панель репозитория. Кнопка "Получить источник", отображаемая значком двух стрелок, формируя круг, описывается оранжевым цветом.

  3. Чтобы извлечь все фиксации из удаленной ветви, нажмите кнопку Pull origin (Отправить в origin) или Pull origin with rebase (Отправить в origin с перемещением изменений).

    Снимок экрана: панель репозитория. Кнопка "Вытягивание источника", отображаемая значком стрелки вниз, описывается оранжевым цветом.

  4. Устраните все конфликты слияния предпочтительным способом: с помощью текстового редактора, командной строки или другого средства. Дополнительные сведения см. в разделе Слияние и закрытие запросов на вытягивание.

Слияние другой ветви с вашей ветвью проекта

  1. В GitHub Desktopщелкните Current Branch.

    Снимок экрана: панель репозитория. Кнопка с меткой Current Branch со стрелкой вниз, указывающей раскрывающееся меню, описывается оранжевым цветом.

  2. Нажмите кнопку " Выбрать ветвь", чтобы объединиться в BRANCH.

    Снимок экрана: раскрывающееся представление Current Branch. Под списком ветвей кнопка "Выбрать ветвь для слияния с my-feature" выделена оранжевым цветом.

  3. Щелкните ветвь, которую вы хотите объединить в текущую ветвь, а затем нажмите кнопку "Объединить ветвь" в BRANCH.

    Примечание.

    Если существуют конфликты слиянием, GitHub Desktop перед кнопкой Merge BRANCH в BRANCH появится предупреждение. Вы не сможете выполнить слияние ветвей, пока не устраните все конфликты.

  4. Чтобы отправить локальные изменения в удаленный репозиторий, в строке репозитория щелкните "Отправить источник".

    Снимок экрана: панель репозитория. Кнопка, помеченная как "Источник push-уведомлений", выделена оранжевым контуром.

Перемещение изменений из вашей ветви проекта в другую

  1. В строке меню выберите "Ветвь", а затем нажмите кнопку "Перебазировать текущую ветвь".

    Снимок экрана: строка меню на Компьютере Mac. В раскрывающемся меню "Ветвь" курсор над параметром с меткой "Rebase Current Branch".

    Снимок экрана: строка меню "GitHub Desktop" в Windows. В раскрывающемся меню "Ветвь" параметр "Rebase Current Branch" описан оранжевым цветом.

  2. Щелкните ветвь, которую нужно перебазировать в текущую ветвь, а затем нажмите кнопку "Перебаза".

  3. Если вы уверены, что хотите перебазировать, нажмите кнопку " Начать повторно".

  4. Устраните все конфликты слияния предпочтительным способом: с помощью текстового редактора, командной строки или другого средства. Дополнительные сведения см. в разделе Слияние и закрытие запросов на вытягивание.

  5. Чтобы отправить локальные изменения, нажмите кнопку Force push origin (Принудительно отправить origin).

    Снимок экрана: панель репозитория. Кнопка, помеченная как "Принудительное нажатие источника" и отображаемая значком двойной стрелки вверх, описывается оранжевым цветом.

Слияние со сжатием другой ветви с вашей ветвью проекта

  1. В строке меню выберите "Ветвь", а затем нажмите кнопку "Squash" и "Объединить в текущую ветвь".

    Снимок экрана: строка меню на Компьютере Mac. В раскрывающемся меню "Ветвь" курсор наведите указатель мыши на параметр "Squash and Merge into Current Branch".

    Снимок экрана: строка меню "GitHub Desktop" в Windows. В раскрывающемся меню "Ветвь" squash and merge in curre..." описан параметр.

  2. В окне "Squash и слияние" щелкните ветвь, которую вы хотите объединить в текущую ветвь, а затем щелкните Squash и слияние.

    Примечание.

    Если существуют конфликты слиянием, GitHub Desktop вы предупредите вас над кнопкой Squash и слиянием . Вы не сможете выполнить слияние со сжатием для ветви, пока не устраните все конфликты.

  3. Чтобы отправить локальные изменения в удаленный репозиторий, в строке репозитория щелкните "Отправить источник".

    Снимок экрана: панель репозитория. Кнопка, помеченная как "Источник push-уведомлений", выделена оранжевым контуром.

Дополнительные материалы