将我的网站上传到 public 存储库有什么 risks/benefits?

What are the risks/benefits of uploading my website to a public repository?

我注意到 Flask tutorial 涉及 pip 的使用。看起来它只用于在本地创建一个轮子,这将使在服务器上的设置更容易,但作为一个网络开发新手,我很好奇:有没有人真的一路将他们的网站上传到 public 存储库喜欢 PyPI?这样做有什么影响(与安全相关或其他)?

不,您应该将私人网络项目上传到 PyPI(Python 包索引)! PyPI 适用于 public,旨在共享的已发布项目

为您的 Web 项目创建包在部署到您的生产服务器时具有优势,但这并不要求您的包在 PyPI 上可用。 pip 命令行工具可以从其他存储库中找到并安装包,包括私有 Git 或 Mercurial 或 SVN 存储库或私有包索引,以及来自文件系统。

郑重声明:我没有费心为我(帮助)开发的任何最近部署的 Flask 项目创建包。这些是在云托管硬件和/或 Docker 容器中直接从其 Git 集线器存储库投入生产的。 Dependenciespip 一起安装(在所有情况下都由 Pipenv tool 驱动),但项目代码本身只是直接从结帐中加载。

就是说,如果这些项目开始使用持续集成,那么在生产中也可以使用打包为轮子的经过测试的代码。将这些轮子发布到私有索引或服务器;有几个项目甚至一些 SaaS 服务已经可用,可以让您管理私有包索引。

如果你确实发布到 PyPI,那么任何人都可以下载你的包并分析你的网站是如何工作的。这样一来,黑帽黑客就可以轻而易举地找到并利用您项目中的安全问题。