我的项目有一个标准的存储库
/home/repo/.git
Run Code Online (Sandbox Code Playgroud)
这是我克隆的存储库,以获取新网站的基本代码,即我克隆了这个
/var/www/site1
Run Code Online (Sandbox Code Playgroud)
我也有几个模块,我作为存储库创建,一些网站将使用这些模块,一些不会.
/home/modules/mod1/.git
/home/modules/mod2/.git
Run Code Online (Sandbox Code Playgroud)
有没有办法可以将这些模块克隆到同一个站点文件夹中?
/var/www/site1
Run Code Online (Sandbox Code Playgroud)
模块目录设置与主仓库具有相同的文件夹结构,当我在主仓库克隆顶部克隆它们时,它们应合并/替换现有文件.(很少有文件重叠)
我的最佳解决方案是以某种方式命名repo,以便在部署新站点时我执行以下操作:
cd /var/www/newsite
git clone /home/repo/.git
git clone /home/modules/mod1/.git
git clone /home/moudles/mod2/.git
Run Code Online (Sandbox Code Playgroud)
当我有更新到网站,我可以做一个像拉:
git pull origin master
git pull mod1
git pull mod2
Run Code Online (Sandbox Code Playgroud)
或者最好:
git pull origin master
Run Code Online (Sandbox Code Playgroud)
也会称之为拉动mod1和mod2.
我一直在看git子模块和分支,但无法弄清楚它们是否是我需要的.