我在这里和那里看到暗示直接从 DVCS 克隆运行实时部署是不好的,最好导出一个干净的树或 tarball 并部署它。在我看来,直接从 DVCS 克隆运行有几个优点: 无需在每次部署时传输整个代码库。 将代码更新到任何所需版本的微不足道的。 如果部署不顺利,回滚到以前的版本是微不足道的。 而且我真的看不出任何缺点。 repo 文件的存在(在我的例子中,一个 .hg/目录)不会导致任何问题。真的有什么好的理由不从 DVCS 克隆上运行实时部署吗? 最佳答案 这就是我所做的。唯一的“缺点”是您无法真正对数据库或站点生成的内容(用户上传)进行版本控制。但这根本不是缺点,因为别无选择。和往常一样,您需要一个备份脚本来复制所有内容。这不是答案,而是对现代 webapp 目录布局的解释。一个非常简单的 Python 网络应用程序可能如下所示:webapp/ .hg/ webroot/ handler.py您将对其进行设置,以便网络服务器仅提供来自 webroot/ 的静态内容,如果该路径不存在,它会向 python(在本例中)询问该页面。由于没有任何服务器端源代码在 webroot/ 中,因此无法提供它(除非您有一个 python 指令命令它提供源代码)。这同样适用于 .hg/ 目录。 注意: SVN (.svn 目录喷洒在每个子目录上。在这种情况下,将包含 webroot/ 所以,是的,您需要确保您没有提供隐藏文件,但无论如何都是这种情况。关于deployment - 从 DVCS 克隆运行实时站点有什么问题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1964550/ 10-10 14:53