Skip to content

外部 diff / merge tool 集成(git difftool / mergetool) #16

Description

@zjywill

现状

只有内置的 FileDiffViewSources/TheGit/UI/FileDiffView.swift),没有调用外部工具的路径。

目标

支持把 diff / 冲突丢给外部工具:

  • 设置里配置 diff tool 和 merge tool(预设 FileMerge / Kaleidoscope / Beyond Compare / VS Code,外加自定义命令行)
  • 文件右键「在外部工具中打开 diff」/「用外部工具解决冲突」

实现要点

  • 直接走 git difftool / git mergetool,不自己拼命令行 —— 这样用户已有的 ~/.gitconfig 配置能直接生效。
  • 如果用户 gitconfig 里已经配了 diff.tool / merge.tool,UI 应该读出来当默认值,而不是覆盖。

关联

#6(内置三栏冲突合并编辑器)不冲突:内置编辑器管 80% 的日常场景,外部工具是给有固定工具链习惯的人的逃生口。

优先级

P2

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions