Loops mercurial预承诺无限循环
好的,问题是,我正在使用Gradle用Java开发一个应用程序。 我有一个Gradle任务,如果文件不存在,它会在每个文件的顶部添加一个许可证 我想添加一个预提交钩子,以便在提交文件时,Gradle任务运行,并在需要时更改文件顶部的许可证。请记住,Gradle licenseFormat可能不会同时更改任何文件或超过10个文件,因此我无法知道哪些文件会被更改以添加到手动提交中 我试过这个钩子:Loops mercurial预承诺无限循环,loops,gradle,mercurial,infinite,Loops,Gradle,Mercurial,Infinite,好的,问题是,我正在使用Gradle用Java开发一个应用程序。 我有一个Gradle任务,如果文件不存在,它会在每个文件的顶部添加一个许可证 我想添加一个预提交钩子,以便在提交文件时,Gradle任务运行,并在需要时更改文件顶部的许可证。请记住,Gradle licenseFormat可能不会同时更改任何文件或超过10个文件,因此我无法知道哪些文件会被更改以添加到手动提交中 我试过这个钩子: [hooks] pre-commit.licenseFormat=C:/Users/pc/Dropbo
[hooks]
pre-commit.licenseFormat=C:/Users/pc/Dropbox/{REPOSITORIES}/{PETULANT}/format.bat
它只是调用一个运行Gradle命令的批处理文件,但正如我所怀疑的那样,由于某些文件发生了更改,而这些文件不在当前提交中,因此提交被卡住,它似乎陷入了一个无限循环,一次又一次地调用批处理文件,每次它都会触发该命令。
在命令的下一次运行中,不应更改任何内容,但当第一次运行更改的文件超过几个时,我认为commit会触发批处理文件两次以上
所以问题是,如何在批处理文件第一次运行之后停止提交钩子,并将更改后的文件添加到当前或新提交中
谢谢。批处理文件只是命令:
gradlew LicenseFormat将批处理文件的内容包含在此处会很有帮助。