GitHub for Windows的"同步"有什么作用?

Jay*_*uzi 86 git github-for-windows

使用GitHub for Windows,您可以"发布"分支,然后将该分支"同步"到GitHub.

在此输入图像描述

同步基本上是git pullgit push?或者还有更多吗?如果我想从命令行执行与"sync"完全相同的步骤,我该怎么办?

(这不是开源,或者我只是读过它.)

Mat*_*Rix 52

同步git pull --rebase,然后如果有本地更改,它会git push.

从这里:http://haacked.com/archive/2012/05/21/introducing-github-for-windows.aspx#87318

  • @Svante它刚刚失败,并提供打开一个shell来帮你解决问题.这是我如何到达这个页面:-) (26认同)
  • 这仍然是真的吗?我刚刚进行了同步并最终得到了一个合并提交,如果流程为:git pull --rebase; git push (8认同)
  • 如果在rebase步骤中发生冲突会怎样? (2认同)

Eth*_*ang 42

由于上述答案是两年多以前的答案,因此对此问题的更新答案是:由于某些错误与rebase相关,"同步"按钮git pull --rebase不再起作用.相反,根据此发行说明(参见版本1.3.0),如果存在冲突,git pull它会进行合并.

目前无法使用上述链接.这是新发行说明.

  • 实际上,这并非完全正确.只有当rebase不起作用时,它才会尝试进行合并. (2认同)
  • @JorisMeys我不确定你的陈述是否属实.根据我的经验,如果在我的遥控器上有*任何*提交,它将创建一个合并提交,即使它可以进行转换. (2认同)

red*_*nce 14

"同步"将是使本地分支与远程分支匹配所需的任何操作.如果您的本地分支已提交您的远程分支没有,那么"sync"会推送您的分支.如果远程分支位于您的本地分支之前,那么"sync"将首先拉出(具体来说git pull --rebase,正如Phil Haack 所解释的那样)."同步"只是让本地和远程镜像互相镜像的捷径.

来自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.

  • @Andiih我的语言是一般化的,而不是一个有序的操作列表.订单是隐含的 - 通知我说"如果远程分支**在您当地分支机构之前**"?我的描述也是GitHub网站的直接引用.无论如何,Matt Rix的答案更加详细,应该被标记为答案.我做了一些小编辑,以澄清我的答案中的任何混淆. (2认同)