【问题标题】:How to visually resolve conflicts from rebase in SourceTree如何在 SourceTree 中直观地解决来自 rebase 的冲突
【发布时间】:2017-05-23 05:13:00
【问题描述】:

我正在使用适用于 Windows 的 SourceTree,并尝试完全使用 SourceTreerebase。我想对文件进行视觉分辨率。我不明白如何设置配置,以便git -rebase 将使用来自 SourceTree 的Launch external merge tool 命令弹出 diffmerge 窗口 这可能吗?如果可以的话,配置是什么?

我的 .gitconfig 文件看起来像这样

[merge]
        tool = diffmerge
[diff]
        tool = diffmerge
[difftool "diffmerge"]
        cmd = diffmerge \"$LOCAL\" \"$REMOTE\"
[difftool "sourcetree"]
    cmd = 'C:/DiffMerge_4_2_0_697_stable_x64/sgdm.exe' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
    cmd = 'C:/DiffMerge_4_2_0_697_stable_x64/sgdm.exe' -merge -result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\"
    trustExitCode = true

【问题讨论】:

    标签: git rebase atlassian-sourcetree


    【解决方案1】:

    您可能指的是 SourceGear 而不是 Sourcetree?您列出的路径指向 SourceGear DiffMerge。

    Windows 上的 Git 需要配置与此页面上发布的内容相匹配才能启动 diffmerge:http://www.sourcegear.com/diffmerge/webhelp/sec__git__windows__github.html

    之后,如果您的所有文件都在您的磁盘上,您可以只调用 DiffMerge,或者您可以使用 git diff 然后在选项中指定工具。在 SourceGear 的论坛上查看此帖子:https://support.sourcegear.com/viewtopic.php?f=33&t=22329&p=77867#p77867

    【讨论】:

    • 不,我正在使用 SourceTree。我会写出适用于我的解决方案。
    【解决方案2】:

    听起来您希望看到解决冲突的方法,但没有看到?

    • 如果是这样,也许您正在经历可归因于此打开 SourceTree bug 的行为。

      (在交互式变基期间,遇到合并冲突时会出现“停止”、“挂起”、“暂停”。)

    这是一个解决方案:

    1. 不要单击消息对话框上的Close 按钮。 关闭 SourceTree,方法是右键单击任务栏按钮并单击关闭。

    2. 重新打开 SourceTree,解决冲突并提交。 (必须手动输入提交消息 - 另一个错误。)

    3. 点击Actions > Continue Rebase

    (重复上述步骤 1 至 3 以解决其他冲突)

    【讨论】:

    • 感谢您查看此内容。我无法验证,因为我不再使用 SourceTree。当时,SourceTree 只与 Bitbucket 和 GitHub 合作,因为 Atlassian 是这个免费工具的所有者。
    猜你喜欢
    • 2021-12-27
    • 1970-01-01
    • 2020-03-02
    • 2011-03-31
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    • 2023-02-07
    • 2020-01-06
    相关资源
    最近更新 更多