如何在Git repos之间共享包含文件的配置和密码

时间:2012-08-30 09:19:17

标签: git pull git-filter-branch

我有一个项目,其中包含一些文件,其中包含带有密码和用户特定数据的配置文件。我们通过git pull将此项目部署到我们的服务器,并通过git push从我们的计算机提交更改。

我注意到git有git filter-branch commit-filer,你可以通过sed命令忽略密码变量。

拉我时有什么类似的过滤器吗?

我想拥有这样的远程主源文件:

array(
'pass'=>'your_pass'
)

当我拉扯时我想忽略这一行。

是否有更好的做法来分享这类文件?

1 个答案:

答案 0 :(得分:1)

git filter-branch改变现有提交,它不会自动与新提交一起使用。

你想要的是hook

但是,您无法完全忽略该文件中的值,因为您无法在不创建并行时间轴的情况下更改已提交的对象。您最多可以在工作树中屏蔽它们,设置钩子,这些钩子将始终忽略结账和提交时的屏蔽线。但这非常复杂,它会让开发人员更难。

更好的替代方法是将此类配置放在git的ignored单独文件中,并且每个开发人员应使用自己的设置和密码维护该文件的本地副本。将密码放在公共(或至少是共享)存储库上永远不是一个好主意。密码应该始终是私密的。