Git 在方便部署和版本控制方面,组织SPA项目结构的正确方法是什么?
先决条件:Git 在方便部署和版本控制方面,组织SPA项目结构的正确方法是什么?,git,deployment,frontend,backend,code-organization,Git,Deployment,Frontend,Backend,Code Organization,先决条件: 我需要ogranize Single Page Application(SPA)项目开发,前端应该基于一个Popullar前端js框架,这意味着使用基于gulp/webpack的前端构建系统从Es2015 js源、Sass样式和Jade标记构建最终捆绑包。后端应基于Laravel 5.x 最后,我介绍了前端包,它应该与后端代码一起使用。在开发的每个阶段,我都有一定的前端包和一定的后端代码,它们可以正确地协同工作 问题: 如何最正确地将所有源代码置于版本控制之下(比如使用Git)?
我需要ogranize Single Page Application(SPA)项目开发,前端应该基于一个Popullar前端js框架,这意味着使用基于gulp/webpack的前端构建系统从Es2015 js源、Sass样式和Jade标记构建最终捆绑包。后端应基于Laravel 5.x 最后,我介绍了前端包,它应该与后端代码一起使用。在开发的每个阶段,我都有一定的前端包和一定的后端代码,它们可以正确地协同工作 问题:
- 如果我要为后端和前端创建公共repo,那么前端源也将包含在repo中,并且我不需要在生产服务器上使用它们李>
- 如果我将为前端和后端创建两个单独的回购协议,那么我将如何同步实际的前端捆绑包和后端代码的实际版本,以及如何返回到项目的特定版本
前端
和后端
创建两个单独的回购协议,那么我将如何同步前端
捆绑包和后端
代码的实际版本,以及如何返回到项目的特定版本
这通常通过父回购完成,父回购的任务是记录声明为的前端
和后端
的正确版本
每次前端
和后端
更改时,您的父回购git状态
都会提到这些回购的SHA1已更改(即其主父回购的)
通过推动父回购(除了推动
前端
和后端
回购),您可以跟踪哪个版本的前端
与哪个版本的后端
,并且您可以返回到项目的特定版本(通过父回购历史)。谢谢您的回答,但由于我对git不是很精通,您能向我澄清一下,如果我只需要组装包,而不需要前端项目中的整个前端回购,甚至不需要这个包的一部分(仅组装样式和脚本),子模块在这种情况下能帮我吗?你看,我的问题有两个方面:1)在每次重建前端时,我只需要后端的新生成捆绑包,我不想每次重建后都手动复制捆绑包;2)我希望在不手动复制前端捆绑包的情况下轻松部署后端。@dajnz你是对的,这(子模块)这不是个好主意:子模块是一个git回购协议,一个全git回购协议(不仅仅是它的一部分)。如果您可以将代码库划分为独立的模块,那么子模块方法适合您。