我正在寻找使用svn进行Web开发的一些帮助。
以下是我的问题。
我在我的网络服务器上设置了SVN,但是将我的项目文件保存在我的PC上,直到我准备好“提交”它们是正确的吗?
如何获取我已发送到目录服务器的“推送”文件,例如/ home / site / public_html / ..基本上我想直接“提交 - 推送”文件我的网站目录。这可能吗?
我真的不了解这对于Web开发如何有效的完整概念。我已经阅读了至少十几个指南,但没有一个真正逐步概述我需要做什么。
上述问题的分步指南,或手动帮助我的善意回应将非常感激。
运行Windows 7 @ home(我正在开发的)运行CentOS 5服务器(实时网络服务器)
感谢您的帮助。
答案 0 :(得分:3)
当你说:
基本上我想“承诺 - 推” 直接存档到我的网站目录。是 这可能吗?
听起来您希望将更改提交到SVN存储库,并让它们自动推送到Web服务器。如果这是真的,你可以通过使用SVN post-commit钩子来实现这一点。在您的系统上,在SVN存储库目录中,这是一个名为“hooks”的子目录。编辑一个名为post-commit.bat
的文件,并将其导出到您的网络服务器,例如:
svn export <svn_repo> <webserver_location>
答案 1 :(得分:1)
首先,我建议您下载Tortoise。它是SVN的集成桌面客户端。您可以使用它将文件提交到存储库。
就过程而言:
您不希望像FTP客户端一样使用SVN。它是一个版本控制系统。因此,存储库是数据的真实主副本。您的网络服务器和本地计算机上的内容是该数据的副本。这样做的原因是你想拥有一个你知道是一个好的工作副本的副本。 SVN将允许您将代码库恢复到任何时间点,因此它也可以充当存档。
上述方案假设您能够测试并验证您的代码是否在您的PC上运行。您的PC上是否运行了您的网络服务器版本?
答案 2 :(得分:0)
您对页面进行了更改并对它们执行了svn提交,以将这些更改保存为svn服务器上的修订。当您想在Web服务器上获得一个干净的副本时,请在您希望文件所在的目录中执行svn导出。这与svn checkout不同,因为它不会添加svn在源中使用的所有.svn元数据文件控制。这也是一个缺点,因为您需要每次导出所有文件。如果您在目录中执行svn checkout,所有元数据也将在web目录中,但您可以轻松删除它们(可能使用脚本)。这将允许您在Web目录中执行svn更新,以将您将来的所有更改提取到Web目录中。