【问题标题】:Log Graph in TortoiseGit not showing branch/merge?TortoiseGit 中的日志图未显示分支/合并?
【发布时间】:2012-11-25 21:53:17
【问题描述】:

我刚刚开始在 Windows 上使用 Git。我在 BitBucket 上托管并使用 TortoiseGit 作为 Windows 客户端。

事情正朝着正确的方向发展,但我在某一点上毫无头绪。我在 master 分支上工作,并且有一次创建了一个新分支。然后我继续在新的分支上工作,不断地提交、推动。最后,当我完成时,我将这个新分支(codetidy)合并回master。

现在,当我执行“显示日志”并选择“所有分支”时,我只会在图表中看到一条直线。没有关于何时取出分支以及何时合并回来的信息。请帮我找到这些信息。

【问题讨论】:

    标签: git version-control tortoisegit


    【解决方案1】:

    这可能是因为您的合并是快进合并,这意味着在创建codetidy 和创建master 之间没有任何提交合并回来 - 所以 Git 只需将 master 移动到相同的提交(因为它已经具有与合并看起来完全相同的文件内容),而不是创建不必要的合并提交。

    如果你不想要这种行为,你需要强制 Git 创建一个单独的合并提交 - 在命令行上,这是通过 git merge --no-ff 完成的。在 TortoiseGit 中,通过选中合并窗口中的“No Fast Forward”复选框来完成(请参阅this previous StackOverflow answer 的屏幕截图)。

    【讨论】:

    • 是的,你是对的。主人没有提交。这听起来是 git 所做的明智之举。但是当 git 将 master 移动到 codetidy 时指向最新提交时,如果我现在最终删除分支,因为实际上我已经合并并完成了分支?
    • 然后master 将继续指向两个分支当前指向的同一个位置。 Git 中的分支只是指向提交的指针;目前你有两个指向同一个提交的指针。如果您删除其中一个指针,另一个仍将指向该提交。
    猜你喜欢
    • 2017-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-25
    • 2018-06-19
    • 2021-12-01
    • 1970-01-01
    • 2022-06-10
    相关资源
    最近更新 更多