在Eclipse PDT中的项目之间共享代码同时保留Web服务器的测试能力的最佳实践是什么?

时间:2012-05-21 02:23:51

标签: git wamp egit eclipse-pdt include-path

我在Eclipse PDT中有很多项目都是网站。所有这些网站都使用我开发的内容管理系统。我将CMS的代码移动到一个可以共享的单独项目中。

到目前为止,我有一个与此类似的项目/文件结构:

CMS [CMS master]
  -CMSlib
Website1
  -scripts
    -CMSlib
Website2
  -scripts
    -CMSlib

CMS\CMSlib文件夹包含共享代码,CMS项目本身与本地Git存储库连接,代表最新版本。我不确定如何在项目之间共享此代码。如果我要共享此代码,我必须能够保留以下工作流程功能:

  • 我必须能够在网络服务器上测试网站。我有WAMP 为此安装。将CMS项目添加到每个网站项目中 Eclipse中的include路径并不好,因为Web服务器不知道 日食所以我需要文件存在于本地(理想情况下是在... 每个网站项目中的scripts\CMSlib文件夹。)
  • CMS的代码必须易于更新所有网站。所以如果我补充一下 CMS项目的一项功能,应该很容易更新每个项目的CMS代码 网站项目。

那么在需要这些要求时,最佳做法是什么?有没有办法将文件从存储库中提取到其他项目中(顺便说一句,我是Git的初学者)?或者我错过了一些允许使用包含路径完成此操作的其他设置?

注意:CMS\CMSlib复制并粘贴到网站项目的scripts文件夹中会出现一个选项框,强制我跳过文件夹scripts\CMSlib已经存在。

1 个答案:

答案 0 :(得分:1)

由于您使用的是Git,您可以使用“子模块”功能: http://git-scm.com/book/en/Git-Tools-Submodules

使用Submodule功能,您可以将所有网站保存在单个项目目录中;但是,如果您希望每个网站使用不同版本的公共代码(作为子模块引入),您只需将公共项目子模块单独存储到每个网站中。

您也可以在没有子模块的情况下执行此操作。您可以简单地“要求”(或自动加载)每个网站的公共代码。我见过的每个IDE都允许您使用额外的库或包。我不使用PDT;但是,我确定它就在那里。

编辑:实际上,快速谷歌制作:"Configuring a Project's PHP Include Path"