如何在我的本地和github存储库中保留一个文件的不同内容?

时间:2011-05-17 13:51:20

标签: git github

我有一个database.php。我想在没有任何敏感信息的情况下将它保存在我的github存储库中。

首先,我没有任何敏感信息就推送到我的存储库。

现在我添加了我的数据库信息,以便我可以在本地使用它。

我加入了.gitignore。我做了rm --cached database.php。但它在推送后从我的github存储库中删除了database.php。

如何在本地和github存储库中保留不同的内容?

提前致谢。

2 个答案:

答案 0 :(得分:3)

您应该制作2个不同的文件,一个是实际的database.php和一个database.php.example或类似的东西,然后将database.php添加到.gitignore

答案 1 :(得分:1)

您应该使用 filter driver 能够:

filter driver

  • 结帐时,在smudge脚本中, detect the content (那些'过滤器驱动程序'脚本没有他们正在过滤的文件的名称){ {1}}
  • 根据以下值创建私有,始终被忽略的database.template
    • database.php文件(也始终被忽略)
    • 或者,如果找不到database.private.value(您的用户克隆您的仓库的情况),则database.private.value文件(推送到远程仓库)
  • 无需在提交(脚本database.public.value)步骤中执行任何操作。