【问题标题】:Clojure syntax aware git merge mode?Clojure 语法感知 git 合并模式?
【发布时间】:2026-01-03 03:40:02
【问题描述】:

Git 有语法感知的合并策略。根据the documentation,它具有自定义策略,直观命名为adabibtexcppcsharpfortranhtmljavamatlab、@98765431 @、perlphppythonrubytex

是否有任何“第三方”git 合并策略知道 Clojure 语法(或至少更多 lispy 语法)? codeq 之类的东西,但对于 git?

【问题讨论】:

  • 您能否添加一个具体示例,说明默认合并策略如何在 Clojure 代码中失败,以及它应该如何工作的示例(可能来自 codeq)? Git 已经支持多种合并策略和diff 算法;也许其中之一对你有用。
  • 表示按行合并,而不是按S表达式合并,(map inc list)(map (fn[a] ...) list)没有正确合并,视为冲突。
  • 用 git 合并策略列表*更新问题

标签: git clojure


【解决方案1】:

可以to use an external tool进行合并。

所以即使不完美,您也可以尝试将using ediff 用于 Clojure 文件作为合并工具。

你也可以尝试merging within a line打破([{

【讨论】: