git-过滤某些文件

时间:2013-04-10 10:07:03

标签: git gitignore git-commit git-add

我有一个常量文件,需要这个文件,但是每个开发人员都在为他的环境改变这个,并经常推送这个更改的文件。有没有一种方法可以有一个过滤器,在这个常量文件中不会添加/推送。 .gitignore没有帮助,因为我们需要在repo中使用默认配置的文件重新克隆项目的人。我只是想让它不受开发人员提交更改的影响 要求每个开发人员不要在此提交中添加此常量文件并强制执行此操作

的问候, 戒日

2 个答案:

答案 0 :(得分:1)

对于默认配置,您可以在repo中放置一些名为 constants-defaults 的文件。之后,您可以忽略带有.gitignore的常量文件。签出新副本的人必须将常量 - 默认复制到常量文件并进行更改。

答案 1 :(得分:0)

假设您具有对远程存储库的完全访问权限(即您可以在其中放置挂钩),您可以使用pre-receive hook轻松执行此操作,以检查推送的提交是否要修改不可变文件,并拒绝如果是这样的话。

如果你需要一些关于如何编写这样一个钩子的提示,请在git pre-receive hooks(基于python的答案)上查看另一个问题。