在git中检查配置文件时隐藏密码

4 投票
4 回答
7345 浏览
提问于 2025-04-16 03:30

可能的重复问题:
在GitHub中处理密码的最佳实践是什么?
我该如何在一个项目中跟踪系统特定的配置文件?

你好,

我想在GitHub上隐藏

DATABASE_NAME = ''
DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = '' 

默认的Django settings.py文件中的第13到17行。

不过我还是想把它提交上去,因为我不时会添加一些修改。我只是希望这四行始终保持为空。

4 个回答

1

很遗憾,Git的工作方式就是这样——一个文件要么在版本控制中,要么不在。

如果你不想把信息放到Github上,那就不要把它提交上去。不过,如果你想的话,可以把配置文件的副本保存在其他地方的一个单独(私有)的仓库里。

5

为了我的配置文件,我创建了一个叫 config.py-example 的文件和一个叫 config.py 的文件。config.py 这个文件在版本控制中是被忽略的。当我部署的时候,我只需要把 config.py-example 复制一份成 config.py,然后更新一下密码就可以了。

21

你还可以有一个额外的设置文件,用来存放密码,然后在你的主设置文件settings.py中导入这些密码。

比如说:

settings.py

DATABASE_PASSWORD = ''

try:
   from dev_settings import *
except ImportError:
   pass

dev_settings.py

DATABASE_PASSWORD = 'mypassword'

并且要把dev_settings.py文件排除在版本控制之外。

撰写回答