如何为开发和部署组织单独的客户端和服务器存储库?

到目前为止,我一直在开发客户机/服务器应用程序(React / Express)作为单个存储库。 这使得直接运行在开发模式下的服务器使用原始的Web应用程序代码/资产在客户端和服务器上进行debugging,或者使用构build的Web应用程序进行生产模式。

现在看起来应该有两个存储库,因为服务器API实际上比我的React应用程序使用得多,两个交织在一起是不可接受的。

我不知道如何去重构这个。 我知道我基本上需要一个服务器上的目录,作为生产就绪的React应用程序的部署目标。 但是,我不知道如何组织一切,以便我可以轻松地在开发模式下启动服务器,并持续监视和编译我的原始Web应用程序代码。

我现在想到的最好的方法是在服务器存储库中只有两个不同的目录,一个用于生产构build(将构build的代码和资产复制到此处),另一个用于在dev模式下运行服务器,应用程序代码在开发过程中不断从客户端存储库中复制。

有没有更好的办法?

git中的一个典型工作stream程是使用持续集成上载提交的开发服务器,然后使用从开发服务器认定为“已发布”的提交手动部署到的生产服务器。

拥有两个基本上充当开发和生产服务器的目录是IMO的可接受实践。 您应该始终在生产和开发模式下运行服务器,理想情况下,这意味着您将运行dev和prod在不同的ports.o

更多的意见,而不是一个坚定的答案,但这是我的2美分。