我们是一组开发同一组文件的开发人员。我想确保没有人执行 git commit -a -m 或 git commit -am
包括我在内的开发人员都有这个坏习惯,git commit -am/ -a -m
我们有很多特定于机器的配置文件,每次都会提交。我可以要求我们所有人使用 --assume-unchanged 但我想让开发人员根本无法使用 -a 标志
我可以以某种方式破解来实现这一目标吗?
我们是一组开发同一组文件的开发人员。我想确保没有人执行 git commit -a -m 或 git commit -am
包括我在内的开发人员都有这个坏习惯,git commit -am/ -a -m
我们有很多特定于机器的配置文件,每次都会提交。我可以要求我们所有人使用 --assume-unchanged 但我想让开发人员根本无法使用 -a 标志
我可以以某种方式破解来实现这一目标吗?
我建议您以不同的方式解决此问题:
当你坚持禁用 -a 标志时:好吧,git 是开源的。查找和禁用读取 -a 命令行参数并重新编译的代码应该不会那么难。但这意味着每当发布新版本的 git 时,您都必须再次这样做,所以我真的不建议这样做。
您可以编写一个包装git
脚本来检查该命令是否存在commit
并且是否-a
设置了标志。然后你可以放弃它并将其他所有内容传递给实际的git
,或者提示“Bad User!Bad!”。将该脚本放在实际 git 路径之前的路径中,或者为您的gitwrap
.
@PiotrZierhoffer 发现了这个:
一个例子在这里: Disable -m in git