Что делает синхронизация GitHub для Windows?

С GitHub для Windows вы можете "опубликовать" ветвь, а затем "синхронизировать" эту ветвь с GitHub.

enter image description here

Является ли синхронизация в основном a git pull и git push? Или есть еще? Если бы я хотел выполнить те же шаги, что и "sync" из командной строки, что мне делать?

(Это не Open Source, или я просто прочитал бы это.)

Ответ 2

Поскольку вышеупомянутый ответ был более двух лет назад, обновленный ответ на этот вопрос: из-за некоторых ошибок с rebase, кнопка "sync" больше не выполняет git pull --rebase. Вместо этого он выполняет git pull, который будет выполнять слияние, если есть конфликты, в соответствии с этим примечаниями к выпуску (см. выпуск 1.3.0).

В настоящий момент ссылка недоступна. Вот новые примечания к выпуску.

Ответ 3

"Синхронизация" - это любые действия, необходимые для соответствия вашей локальной ветки удаленной ветки. Если ваше местное отделение сообщило, что ваш удаленный филиал не сделал этого, то "sync" будет толкать вашу ветку. Если удаленная ветвь была впереди вашего локального ветки, тогда "sync" вытащил бы сначала (в частности, git pull --rebase, как было описано Филом Хааком). "Синхронизация" - это просто ярлык для локального и удаленного отображения друг друга.

Из сайта GitHub:

The sync button turns the complex workflow of pulling and pushing into a single operation. It notifies you when there are new changes to pull down and lets you quickly share local changes.

Ответ 4

Чтобы добавить к @ethanyang ответ,

В соответствии с псевдонимом, настроенным в gitconfig,

[alias]
...
sync = !git pull && git push