Github Desktop:“从<branch>更新”按钮

时间:2015-10-14 11:59:57

标签: git github-for-windows

在下面这张Github(c)桌面应用程序的图片中,有一个“从主人更新”按钮(在这种情况下)。我想知道是否有人知道它触发的确切 git 功能。主要是我感兴趣的是使用 merge rebase 。 (我找不到任何类型的日志控制台)。

enter image description here

3 个答案:

答案 0 :(得分:16)

GitHub Desktop中按钮底层的git命令没有详细记录,所以我调查了一段时间。我总结说,&#34;更新来自...&#34;发送按钮

git merge --no-ff -m "Merge <auto_text> <branch_name>" <branch_name>

或类似于&#34;比较&#34;分支在GitHub桌面GUI中设置为<branch_name>

我通过以下方式得出结论:

首先,我将我控制的存储库分叉到我的GitHub帐户。然后,我将存储库从我的GitHub帐户克隆到我的本地计算机。接下来,我对(原始)主远程存储库进行了一些小改动。最后,我使用git fetch <remote_name_assigned_to_main_repo><remote_name>,以后)将单个提交带到我的本地计算机。在此fetch之后,&#34;更新自...&#34;按钮亮了。

这设置了一个场景,其中我的本地存储库中签出的分支master是主远程存储库中master后面的一个提交。默认情况下,git merge <remote_name>会产生快进合并(没有合并提交)。

使用&#34;更新来自...&#34;但是,按钮导致以下reflog条目:

HEAD@{0}: merge <remote_name>/master: Merge made by the 'recursive' strategy.

log中的合并提交:

Merge remote-tracking branch '<remote_name>/master'

(&#39;递归&#39;策略&#34; ...是拉动或合并一个分支时的默认合并策略。&#34;根据手册。)

我还设置了一个方案,其中git rebase可能是一个选项,但看到了相同的合并行为。

答案 1 :(得分:5)

当我将鼠标悬停在按钮上时,它明确表示&#34; Merge XX提交来自&#34;

enter image description here

答案 2 :(得分:0)

进入&#34; Branch&#34;菜单,然后&#34;合并到当前分支......&#34;并选择你想要获得的分支&#34;更新&#34;从