是否可以检查文件是否已提交并退出并出现错误?
我在git中有一个文件,该文件必须存在,但永远不要修改,我希望使用husky作为预提交-因此,如果有人尝试修改该文件并提交,那么它将引发错误。 / p>
如果将来需要修改文件,则可以禁用预提交。
文件是一种配置,开发时我需要对其进行大量编辑,但是更改永远都不要提交。
我希望用沙哑的狗狗做检查,以确保自己不会。
答案 0 :(得分:0)
我宁愿使用content filter driver使用 .gitattributes
declaration 来管理文件。
这意味着您不会不版本实际的配置文件,而只版本化一个模板文件,以及一个在每个环境中具有所有可能值的文件。
(来自“ Customizing Git - Git Attributes”的图像,来自“ Pro Git book”的图像)
生成的实际文件仍然被.gitignore
忽略:您的实际工作树不会“脏”。
smudge
脚本:
smudge
期间应用git checkout
脚本的模板,选择正确的值文件并生成正确的文件。这样,您可以在开发时随意修改config.dev
值文件:将从这些值生成配置文件(未版本化)。
但是在生产中,使用config.prod
(版本文件)值对同一仓库进行检出将触发生成prod配置文件。