推送到git-hub存储库时自动忽略选定的代码更改

时间:2012-08-11 12:33:02

标签: git github

在我工作的编码项目类型中,人们常常使用一个共同的代码库,然后在其上构建自己的个性化代码。一种方法是将公共基本代码保存在自己的git-hub存储库中,然后人们可以对其进行分叉和修改。

但是,在将更改推送到公共基本代码存储库时,您不希望包含个性化代码,因此在合并时必须小心不要包含它。有没有一种简单的方法可以做到这一点而不必告诉git每次都忽略个性化代码?

如果可能的话,我宁愿避免使用基本代码的单独分支,以便更改基本代码。

1 个答案:

答案 0 :(得分:2)

如果个性化仅限于某些文件,并且只能通过某种方式检测其内容,那么您可以:

  • 仅限版本的模板文件,这些文件将始终推送到您的“公共内容”回购
  • 保留私有值文件(包含正确值的文件,git repo始终忽略这些文件,从不推送)
  • 版本脚本文件能够获取模板文件,值文件,并自动生成正确值的结果文件。生成的文件也不会被推送,并且你的git repo也会被忽略。

这个想法是在结账时自动生成这一代 您可以通过声明内容过滤器驱动程序来实现。

content filter dirver

在结帐时,在smudge脚本中, detect the content (那些“过滤器驱动程序”脚本没有他们正在过滤的文件的名称)模板文件,并通过查找特定路径中的值文件来生成正确的内容。