如何更改冲突标记?

问题描述 投票:0回答:2

我已经发生过好几次这样的情况:由于仓促且不太仔细地合并几个分支,我的 LaTeX 文档中存在一些遗留的合并标签。对于大多数编程项目,这些标签会导致语法错误,因此我会发现它们。然而,在 Latex 中,

<<<<
====
>>>>
标签只是编译成一些其他字符序列,没有任何警告。

为了解决这个问题,我想将这些冲突标记更改为无法编译的内容,或者至少使它们非常明显(例如分页符、大字体警告或编译警告)。

我当然可以制作一个(bash)脚本,用我选择的东西替换所有这些标记,但我更喜欢它是这个问题的更优雅的解决方案。

我找到了

merge.conflictstyle
选项,但是
diff3
选项仅添加了
||||
标记,该标记也可以在没有警告的情况下进行编译。

git merge latex git-merge
2个回答
9
投票

即使有一种方法可以使自定义冲突标记 LaTeX 特定(我认为没有,但我很可能是错的),可能很难选择一种在所有情况下都有效的方法。一个更简单的解决方案是启用 git 的库存“预提交”挂钩,该挂钩在提交时识别冲突标记,并在存在冲突标记时拒绝提交。要启用它:

cd <repo>
mv .git/hooks/pre-commit.sample .git/hooks/pre-commit

git 附带的 stock hook 也会查找空格错误。要手动运行检查,请使用以下命令:

git diff --check

2
投票

也许你可以用

大数字
更改属性conflict-marker-size。我所说的大数字,是指由于行太长而会触发 Latex 警告的数字。

$ cat .gitattributes
*.tex conflict-marker-size=100 ;# Or whatever makes Latex unhappy
© www.soinside.com 2019 - 2024. All rights reserved.