我刚接管了大量Magento安装,并提供了大量自定义功能。我从来没有在项目中使用SVN,但我确实看到了拥有它的好处。到目前为止,我已经设法创建了一个存储库,但我现在需要知道获取当前项目副本并正确设置SVN的过程。
这样做的过程是什么?我首先查看Magento的干净副本吗?如果版本不匹配怎么办?请详细说明有很多帮助。我知道SVN的好处,但不知道如何实际设置它。
答案 0 :(得分:3)
移动正在运行的网站对于刚刚开始开发的网站来说总是有点棘手。首先,获取最新版本的网站副本(不要使用实时版本)。从副本中删除所有缓存/会话文件,并将其签入数据库。您现在应该在数据库中拥有完整的副本。
接下来,您需要移动一堆文件和目录才能被忽略。如果你在Windows上,我被告知Tortoise有很好的设施来做到这一点。否则,您需要实际删除文件的repo副本,将它们添加到忽略列表中,然后将它们复制回站点的工作副本。有关如何开始忽略的建议,请参阅Magento & Subversion (SVN) - Getting a Development Environment Started?。
最后,将它带到现场可能会有点困难。如果您可以完全控制服务器,请将所需站点的版本签出到单独的目录中,还原为开发目的而忽略的文件(local.xml
)和彻底测试。现在,再去做一次,你错过了什么。最后,将Apache切换到该目录以满足您的请求,您应该正在运行。
特别注意事项:确保在repo中备份数据库,并仅使用开发数据库实例进行更改。永远不要改变实时代码,永远不要在实时数据库上开发,你应该完全避免灾难。
希望有所帮助!谢谢,
乔
当我输入此内容时,我会另外注意到。您可能希望为您的版本准备一份干净的Magento安装副本,以查看Core是否已被修改。如果它有,对前开发人员感到羞耻,你需要考虑将这些变化移出核心。
答案 1 :(得分:3)
我不确定你的时间表是什么,但是我可能会建议在跳转到SVN + Magento项目之前在Subversion中花一点时间。
大约1。5年前我穿着同样的鞋子,发现即使是干净的安装,Magento项目中也有数十万个文件。然后,一旦你开始测试,Magento会创建更多的缓存,临时和报告(异常日志)文件,这些文件会阻塞很多东西。
我找到了this nice list个文件svn:ignore
这样做可以节省你在项目最后阶段的等待时间。
随着时间的推移,我意识到更便携的解决方案(并且更适合升级)就是在你的回购中没有Magento本身。现在我只将模块,主题/接口和资产放在存储库中。
这使得安装/升级/迁移变得简单,因为我只需下载最新的Mage并将其解压缩到Document Root并将我的模块符号链接到Mage安装中的正确位置。