2016-01-20 92 views
-3

我有一个涉及多个应用程序的项目。该网站包括所有的应用程序,每个应用程序也有它自己的科尔多瓦应用程序。 Cordova应用程序的设置方式不同(与网站相比),但它们使用的一些代码是相同的(app.js,app.css等)。版本控制多应用程序项目的最佳方式是什么?

目前我使用git,并有3个分支用于网站的本地,alpha和beta版本,正如我所说的那样包括所有的应用程序。目前,我将网站上每个应用程序之间的代码复制/粘贴到每个应用程序的科尔多瓦对应程序中。这很麻烦,会导致很多问题,但我无法弄清楚如何更好地做到这一点。有人可以提出可能的解决方案吗

+0

“我使用git,并有3个分支用于本地,网站的alpha和beta版本。”我建议学习更好的git,其中包括使用分支来达到预期目的,并使用标签。 *如果我在说这个时遇到意思,我很抱歉。我不是故意的:)*。 – intboolstring

+0

没有冒犯。我意识到我所做的并不是最好的方式,我只是试图找出最好的方法。但是感谢提及标签,我会对它们进行一些研究。 –

+0

我不想将此作为答案提交,但我建议为每个应用程序分别提供单独的回购协议或单独的分支。然后,您可以将'git checkout'分支和'git pull'更新。 – intboolstring

回答

1

一体化存储库和每个项目的存储库不是一个“更好”或“更糟糕”的东西,它们各有利弊。一般来说,如果项目是相关的(比如同一个网站的改动),那么你应该把它们放在一个单独的存储库中。你以后可以随时改变主意。

目前我复制/粘贴网站上的每个应用程序之间的代码与每个科尔多瓦对应的代码。

由于您的应用程序如此相关以致于您在它们之间复制代码,因此应将它们保存在单个存储库中。这使您可以在单个提交中的所有项目中进行相同的更改。

注意:你真正的问题不是你的Git布局,而是所有的代码复制。你正在创造一个维修噩梦。你应该问一个关于如何处理更好的问题。

1

将所有项目保存在一个存储库中是一种简单的方法,可以使它们保持最新状态,但这可能会导致您的历史记录混乱。我不确定在应用程序之间复制代码的核心原因,但在理想情况下,此代码将位于库中,并且每个应用程序都位于其自己的存储库中。如果您确实将所有应用程序放入单个存储库中,我不建议将它们放在单独的分支上,因为您一次只能检出一个应用程序。

关于您目前使用的分支系统,使用其他系统可以大大改善。 git-flow是最受欢迎的系统之一。

http://nvie.com/posts/a-successful-git-branching-model/

混帐流模型的本质是采用主,发布,开发和功能分支(等等)来组织你的代码是在状态,这可以被看作是一个更您的Alpha版,测试版和本地分支的高级版本。

相关问题