6

可以在暂存、添加或推送之前使用 git 挂钩替换密码吗?

我希望在提交或推送之前用模板替换密码。

例如,假设我用“PWDEXLUDE_password”作为纯文本密码的前缀,而钩子用 <> 替换它,因此在部署阶段,脚本可以查找模板,在数据库中查找密码,并将该模板替换为生产密码.

git可以使用或可能使用类似的东西吗?

4

2 回答 2

3

我会采取不同的方法,将密码保存在不受版本控制的配置文件中,并让您的应用程序在运行时从该文件加载它们。你的部署脚本只需要确保这样一个文件存在,并且每个开发者都可以有自己的开发和测试密码。

如果你真的想按照你的要求做,我认为你可以在一个pre-commit 钩子中完成它,提取包含密码的文件的暂存版本,重写它们,并暂存重写的版本,确保不影响工作副本。但是,出于多种原因,这对我来说似乎是个坏主意。

于 2011-04-30T10:37:54.280 回答
2

我认为这里正确的事情(如果您不想要一个被忽略的文件,我也更喜欢)将是一对涂抹/清洁过滤器。请参阅gitattributes中的过滤器部分。

于 2011-04-30T11:26:01.590 回答