您可以将代码集中在一个公共文件夹(创建一个脚本,将所有代码复制到8个服务器或使用

NFS)。

此集中式代码可以在SVN中的一个或多个存储库中。所以当你推,你只推挤你需要推。

例如,您可以为自己的PHP库(数据库类,xml,imap等)创建1个存储库。在一个简单的结构,当你调用这些文件,你只需:

require('/web/lib/DatabaseMySQL.class.php');

这样,你知道所有你需要的文件在同一个地方,很容易维护。特别是如果你的代码需要需要文件的所需文件。

您可以根据需要创建任意数量的存储库,如果不想将文件(例如第三方(Smarty,phpmailer)与您创建的代码混合使用,请重复此操作。

另一件事是,不要重新发明轮子。有很多好的代码,可能做你已经需要做的。像发送电子邮件(phpmailer或任何其他)或模板系统(Smarty或任何其他)。这样你有相同的开发时间和更新(如果可用),你只需下载,复制(提交,如果你有一个存储库)和推。

脚本VS NFS。

创建一个脚本来推送所有的代码在8个Web服务器是很容易做到的。这里的缺点是你需要确保所有的文件夹和所有的文件,你在每个服务器是相同的,以避免错误。此外,如果你的网络有一个滞后或连接下降在推一些服务器将不会有相同的代码。再次,更多的错误。这比NFS解决方案运行得快一点。

创建一个NFS修复上面的问题,因为你只使用1位置,但如果该位置删除所有的服务器将无法正常运行。所以,当你推代码,你只推到1个地方,所有其他服务器自动有新的代码。你还需要知道的东西,这将是一个比如果代码是直接在硬盘驱动器上慢一点。

以下是您可以使用的示例脚本:

您可以创建一个.sh脚本,它将代码从您的存储库(例如,从存储库检出的代码)复制到所有服务器,如下所示:

// file: pushcode.sh

#!/bin/bash

/usr/bin/rsync -avz --exclude='.svn' -e ssh /path/to/code/checkedout/ user@server1:/path/to/code

/usr/bin/rsync -avz --exclude='.svn' -e ssh /path/to/code/checkedout/ user@server2:/path/to/code

使此脚本可执行并运行它:

./pushcode.sh

要确保代码正确复制,而不提示每次输入密码,您将必须输入bypass the ssh login。

svn目录结构 php,svn – php代码组织相关推荐

  1. 关于SVN 目录结构

    Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/    |    +-trunk    +- ...

  2. SVN目录结构及作用

    SVN规范 SVN目录规范 在visualSVN中创建仓库时,可以选择svn目录结构 Trunk 主干目录,此目录下的文件为基准文件 Branches 用于开发的分支目录 Tags 用于发布的版本目录 ...

  3. svn 目录结构 trunk java_svn代码版本管理

    1.0开发,做dev1.0的branch 此时的目录结构 svn://proj/ +trunk/ (不负担开发任务) +branches/ +dev_1.0 (copy from trunk) +ta ...

  4. svn 目录结构 trunk java_如何彻底删除SVN中的文件和文件夹(附恢复方法)

    这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的b ...

  5. EntLib.com Forum / YAF 开源论坛--源码的目录结构(对分析代码很有帮助)

    EntLib.com Forum / YAF 开源论坛--源码的目录结构如下(对分析代码很有帮助): ├─bin (二进制目录,编译后的dll放于此处) ├─classes (类文件目录,如系统中用到 ...

  6. 源代码管理工具(下)-SVN目录结构

    内容中包含 base64string 图片造成字符过多,拒绝显示 转载于:https://www.cnblogs.com/wsnb/p/4771379.html

  7. SVN的目录结构介绍和版本管理方式

    1 SVN标准目录 Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是: 这是一个标准的布局,trunk为主开发目录, ...

  8. svn服务端删除版本库_删除SVN目录及从服务器端删除SVN版本库文件方法详解

    删除SVN目录 当使用了svn版本控制系统后每个目录下都会有一个.svn目录存在,开发完当交付产品或者上传到服务器时一般要把这些目录删除,这里总结了一下在linux和win下的办法. 一.在linux ...

  9. 项目从服务器移除,删除SVN目录及从服务器端删除SVN版本库文件方法详解

    删除SVN目录 当使用了svn版本控制系统后每个目录下都会有一个.svn目录存在,开发完当交付产品或者上传到服务器时一般要把这些目录删除,这里总结了一下在linux和win下的办法. 一.在linux ...

最新文章

  1. Linux系统文件目录
  2. python学习-----9.7-----GIL、死锁递归锁、信号量,event事件
  3. Smarty中的内建函数(一)config_load、foreach
  4. php防止重复结算问题_PHP 编写关系到财务这样重要的系统,设计应该每次变动都算账,还是月底统一算账?...
  5. log4j:WARN Please initialize the log4j system properly
  6. python脚本:判断字符是否为中文
  7. jquery中的 $(function(){})
  8. c ++向量库_在C ++中对2D向量进行排序
  9. C语言学习笔记---动态内存分配
  10. chap6_2 Parallax mapping in OGRE
  11. move.js操作CSS3动画
  12. idea如何将web项目打成war包maven和非maven
  13. Dockerfile 学习:Docker Alpine PHP 安装扩展
  14. s3c2410_gpio_setpin()等系列函数
  15. Atitit.软件仪表盘(0)--软件的子系统体系说明
  16. 改变ALERT组件的背景色和背景透明度.
  17. 以太网转DMX模块核心模块 支持ArtNet sACN DMX RDM
  18. simulink教程(自动控制原理)
  19. 收藏夹整理——程序员笔试面试
  20. 中国未来经济发展方向,共享经济大势所趋

热门文章

  1. nginx环境的搭建
  2. NOIP2005普及组第4题 循环
  3. Numpy 多维数组变为常量、增加维度、元素复制、按块复制、横轴竖轴合并数组、连接数组
  4. [模板][持续更新]欧拉回路与欧拉路径浅析
  5. MYSQL 连接数据库命令收藏
  6. 变体类的使用 package record case【转载】
  7. [zt]petshop4.0 详解之八(PetShop表示层设计)
  8. OpenCV+python:Canny边缘检测算法
  9. python找工作学历_第一学历和最高学历,哪一个对找工作帮助更大?
  10. graphs菜单_图形用户界面菜单全面解析