我有一个 Next.js 项目。我想将其推送到 GitHub 并将其链接到 Vercel。但是,.gitignore 中有一些文件我需要 Vercel 才能查看。我不是将所有这些数据添加到我的环境文件中,而是寻找另一种方法来从 GitHub 隐藏这些文件,但对 Vercel 可见。有什么建议吗?
我在尝试隐藏生产中的
.pem
文件时遇到了这个问题。
如果您试图隐藏类似性质的文件,例如证书(就像我自己一样),这就是我解决它的方法:
project-name/
├── app/
│ ├── ...
├── .../
├── .../
└── private.pem
我需要在我的代码中使用
private.pem
作为认证:
import fs from 'fs';
const credentials = fs.readFileSync('./private.pem');
// ...
我发现使用 vercel CLI,您可以手动添加文件作为环境变量。
npm i vercel
vercel env add MY_PRIVATE_FILE production < private.pem
重构代码:
import fs from 'fs';
let credentials: Buffer | string;
if (process.env.NODE_ENV === 'production') {
credentials = process.env.MY_PRIVATE_FILE!
} else {
credentials = fs.readFileSync('./private.pem');
}
这应该适用于任何私人文本类型文件(
.txt
等)