加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 使用git和符号链接的基于组件的Web项目目录布局

发布时间:2020-12-14 01:54:05 所属栏目:Linux 来源:网络整理
导读:我正在计划我的 linux / apache / php web项目的目录结构,如下所示: 只有www.example.com/webroot/才会在apache中公开 www.example.com/ webroot/ index.php comp1/ comp2/ component/ comp1/ comp1.class.php comp1.js comp2/ comp2.class.php comp2.css l
我正在计划我的 linux / apache / php web项目的目录结构,如下所示:

只有www.example.com/webroot/才会在apache中公开

www.example.com/
  webroot/
    index.php
    comp1/
    comp2/
  component/
    comp1/
      comp1.class.php
      comp1.js
    comp2/
      comp2.class.php
      comp2.css
  lib/
    lib1/
      lib1.class.php

组件/和lib /目录只能在php路径中.

为了使webroot目录中的css和js文件可见,我计划使用符号链接.

webroot/
    index.php
    comp1/
      comp1.js (symlinked)
    comp2/
      comp2.css (symlinked)

我尝试遵循以下原则:

>按组件和库布局,而不是按文件类型而不是“public”或“non public”,index.php是一个例外.这是为了更容易开发.
>公开onle公共Web目录中的最小文件集,并使其他所有内容无法访问Web.将组件和库需要公开的文件符号化到公共位置,但仍然镜像布局.因此,组件和库结构也可以在链接中生成的html代码中看到,这可能有助于开发.
> git的使用应该是安全的并且始终有效.可以按照一些程序将符号链接添加到git中,但是在检查完它们之后,应该安全地处理更改分支.

git如何正确处理单个文件的符号链接,有什么需要考虑的吗?

说到图像,我需要链接目录,如何用git处理?

component/
    comp3/
      comp3.class.php
      img/
        img1.jpg
        img2.jpg
        img3.jpg

它们应该链接在这里:

webroot/
    comp3/
      img/ (symlinked ?)

如果使用符号链接有缺点,我可以直接将图像移动到webroot / tree,这将打破第三个原则(git实用性).

所以这是一个git和符号链接问题.但我有兴趣听听有关php布局的评论,也许你想使用评论功能.

解决方法

一旦你需要在其他地方重用一些文件,就应该开始考虑 components或(在git中) submodules

您可以定义:而不是在同一个仓库(SVN或“Centralized way” for CVCS)中管理webroot,comp和lib,

> n repos,每个组件需要重用一次(例如’img’将是一个Git repo,重新用作webroot中的子模块)
>一个主要项目,用于引用您需要的那些子模块的精确修订.

这是符号链接子模块的优点之一:您引用一个精确的修订版本,如果该组件有自己的一些演变,则不会立即看到它们(直到您更新子模块为止).使用符号链接,您可以看到该链接另一端的文件集是什么状态.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读