ElB*_*ulP 7 git pre-commit githooks
我正在尝试编写一个预提交钩子来修改我的代码中的一行,但我甚至不知道从哪里开始.
问题是:
我有一个 KEY
public static final String APP_KEY = ""; //DELETE THE KEY BEFORE COMMIT!!!
Run Code Online (Sandbox Code Playgroud)
为了避免将KEY发布到存储库,我认为git hooks可能是我们需要的东西,而不是手动删除密钥.我看看自定义git钩子但我不知道如何编写钩子.
有没有办法在提交更改之前,删除KEy并在提交后再次写入密钥?
这可以通过内容过滤器驱动程序来完成:
clean在检查时删除密钥的脚本,smudge脚本,可以在结帐时将其添加回来。
(图片来自Git 书籍中的“自定义 Git 属性” )
请参阅“ git 能否在空格和制表符之间自动切换? ”中查看如何声明这些过滤器的示例。
对于类似的用例,我除了清理/涂抹脚本遇到麻烦之外什么都没有,具体取决于文件内容,无人值守运行
git add -A是否会运行过滤器(而不是在git有人值守模式下调用时始终工作)。所以我最终选择了pre-commit hook。