用例:我们有一些我们想要跟踪的项目元数据文件,但很少(如果有的话)提交,尽管它们一直在本地更新(不同的用户有不同的项目路径)。在常规场景中,除非明确要求,否则任何用户都不应提交这些文件。
Git ignore用于未跟踪的文件。
是否有类似的功能让git忽略跟踪文件?是否有一种我可以在中央回购中更改的方法,并且会反映所有用户?
答案 0 :(得分:3)
$ git update-index --assume-unchanged <filename>
但这仅适用于本地。
答案 1 :(得分:3)
我是否可以在中央回购中更改所述方法,并反映所有用户?
否则在一般(分布式)上下文中:任何类型的挂钩或进程都不能在中心位置“更改”并被所有分布式下游存储库选中。
如果您的用户在central template之后创建了他们的回购,那么一些默认挂钩可以引用中央脚本(即,如果我们在同一网络上的用户上发言,则共享磁盘中的所有用户都可以访问该脚本)
adymitruk的answer主张使用开发分支,因此不会将私有更改提交给“公共”分支(即推/拉分支)。<登记/> 这很好,但是:
最好使用 filter driver (在.gitattributes
文件中声明,可以通过克隆传播):
smudge
脚本:
clean
脚本:
答案 2 :(得分:1)
使用开发分支。根据您的环境提交具体的变更。返回合并我们的战略。现在,这些更改将永远不会分享给公共分支。其他答案缺少使用开发分支的重点。