在项目中隐藏 .env 文件
hiding .env file within a project
这是我的文件目录结构
项目
- 客户
- 服务器(具有带凭据的 .env 文件)
推送到 github 时如何在 .env 文件中隐藏凭据?我知道您必须使用 .gitignore,但由于我的 .env 不在根目录中,那将如何工作?
更新
我尝试按照回复所说的进行操作,但 .env 文件仍然没有在我的存储库中消失。
这是 .gitignore 文件的内容:
.env
.idea
**/node_modules
data
yarn.lock
您只需将 .env
添加到 .gitignore
,然后添加 git add .gitignore
,再添加 git commit
。这将忽略来自未来 git 操作的所有子目录中的 .env
,因此 .env
文件根本不会被推送到 GitHub.
.gitignore
file 指定文件或目录名称的 模式 ,而不是相对于目录树中 .gitignore
位置的显式路径。这意味着您不需要单独指定 project/client/.env
等。
所以,只需将此添加到您的 .gitignore
:
.env
如果您不小心推送了 .env
文件并且其中包含敏感凭据,请立即撤销这些凭据并将其视为机器人已经抓取了它们,并按照此处的说明进行操作:Removing sensitive data from a repository
附带说明一下,如果您的应用程序需要环境变量才能工作,通常会将它们记录在您的自述文件中。我还经常看到一个名为 .env.sample
或类似名称的文件,这是每个开发人员自己的 .env
文件的样板。该文件通常只包含键而没有值,因此其他开发人员知道他们需要设置哪些变量。
这是我的文件目录结构
项目
- 客户
- 服务器(具有带凭据的 .env 文件)
推送到 github 时如何在 .env 文件中隐藏凭据?我知道您必须使用 .gitignore,但由于我的 .env 不在根目录中,那将如何工作?
更新
我尝试按照回复所说的进行操作,但 .env 文件仍然没有在我的存储库中消失。
这是 .gitignore 文件的内容:
.env
.idea
**/node_modules
data
yarn.lock
您只需将 .env
添加到 .gitignore
,然后添加 git add .gitignore
,再添加 git commit
。这将忽略来自未来 git 操作的所有子目录中的 .env
,因此 .env
文件根本不会被推送到 GitHub.
.gitignore
file 指定文件或目录名称的 模式 ,而不是相对于目录树中 .gitignore
位置的显式路径。这意味着您不需要单独指定 project/client/.env
等。
所以,只需将此添加到您的 .gitignore
:
.env
如果您不小心推送了 .env
文件并且其中包含敏感凭据,请立即撤销这些凭据并将其视为机器人已经抓取了它们,并按照此处的说明进行操作:Removing sensitive data from a repository
附带说明一下,如果您的应用程序需要环境变量才能工作,通常会将它们记录在您的自述文件中。我还经常看到一个名为 .env.sample
或类似名称的文件,这是每个开发人员自己的 .env
文件的样板。该文件通常只包含键而没有值,因此其他开发人员知道他们需要设置哪些变量。