【问题标题】:Multiple Similar Sites with GIT? Or some other version control?使用 GIT 的多个类似站点?还是其他版本控制?
【发布时间】:2012-10-14 23:22:24
【问题描述】:

我刚刚在一家管理许多不同网站的公司担任网络开发职位。有几个不同的网站“设计”,对于每个设计,有几个相同的东西的千篇一律的版本。它们是不同的站点,但框架非常接近,因为只有内容和一些样式发生了变化,前一个人只是将这些内容复制粘贴到特定的主机上。

所以我的问题是 Git 是否适合这个?我在自己的副项目中使用了一点 git,但我们正在谈论数百个站点(每个设计大约 10 个)来完成这项工作。一堆树枝会是个好方法吗?主要是我希望能够快速轻松地更新常用文件。当我们进行全局更改时,前一个人只是使​​用 perl 脚本将内容转移到“更新”站点。似乎使用 git 会更加防呆和受控(版本控制)。

Subversion 是我的另一个想法,但我无权在所有服务器上安装它。大多数文件是通过 ftp 传输的,但经过一些改进,我可能会得到一些 ssh(我可能会为 sshfs 设置 fuse)。

有什么想法吗?或者,如果我完全错了,也请告诉我。我以前从来没有处理过这么大的事情(即很多网站),而且看起来真的很乱。我知道有更好的方法!

谢谢!

【问题讨论】:

    标签: git svn version-control multiple-sites


    【解决方案1】:

    git submodules 仍然是跟踪其他存储库的好方法,包括:

    • 普通文件一个
    • 一个用于特定文件。

    这意味着您的每个网站都是一个“父”存储库,其中包括上述两个子模块。

    诀窍是,特别是对于表示公共文件的子模块,是在网站中将其声明为“following the latest commits of a branch”。

    git submodule add -b master common url/to/common/files/repo
    

    这样,每次您必须处理其中一个网站存储库时,您首先需要做的就是:

    git submodule update --remote
    

    而且您一定会使用最新的常用文件。

    【讨论】:

      【解决方案2】:
      1. 分开开发和部署到不同的任务中(不需要在每个生产中都有一个存储库/或只是 WC/)
      2. 任何具有良好分支合并的 SCM 都可以工作
      3. 所有站点(框架)的公共部分可以分离(或者至少您可以尝试这样做)到一个实体中,链接到最终产品(使用 SCM 特定的方法 - 子模块、外部)

      【讨论】:

        猜你喜欢
        • 2014-05-17
        • 1970-01-01
        • 1970-01-01
        • 2021-07-02
        • 2015-10-12
        • 2010-09-25
        • 2016-01-05
        • 2018-08-23
        • 2015-04-11
        相关资源
        最近更新 更多