Git在repo本身为项目设置标准合并工具

时间:2016-11-14 12:09:08

标签: git diff config

所以,继续这个(和其他)问题/答案:git-on-windows-how-do-you-set-up-a-mergetool,告诉我们如何在本地PC上设置差异/合并工具(全局或每个项目)。

对于我们的项目(我们正在标准化我们的工具集和安装)我想只设置一次差异/合并工具并将其推广给每个人。

有办法做到这一点吗? - 即当我们克隆一个项目时,它已经包含了merge / diff工具配置。

我在.git文件夹中看到有一个“配置”文件 - 我尝试添加:

[diff]
    tool = bcompare

但是当我输入命令git difftool ...

时,这似乎不起作用

1 个答案:

答案 0 :(得分:2)

正如评论中所提到的,不可能将存储库配置推广到克隆存储库的每个人。这适用于存储在.git/config中的直接配置,但也适用于挂钩等。无论何时克隆存储库,都会从/usr/local/git/share/git-core/templates复制默认存储库模板,并辅以在克隆过程中创建的常规配置(例如.git/config和常规引用)。

由于配置始终是存储库的本地配置,因此克隆的存储库也不会从源的本地配置复制设置。

对于钩子,这个问题的常见解决方案是直接在存储库中或作为其他全局可用工具(例如Gerrit’s git-review)的一部分设置一些安装脚本,该工具在第一次设置时设置本地配置使用

对于您的差异/合并工具,您可以提供类似的设置脚本,为您的团队成员执行此操作。

请注意,这些工具通常非常具体,不仅适用于正在使用的计算机(例如,我可以将Beyond Compare安装到与您不同的文件夹中),而且非常主观。可能有人更习惯使用工具X而不是您配置为默认工具Y.所以我建议将其留给开发人员。如果他们关心的话,他们可能已经在全球范围内建立了一些工具。