当代码只能在远程服务器上运行时的良好版本控制做法

时间:2018-12-11 19:52:02

标签: java git intellij-idea versioning

这里非常糟糕的做法的好例子:

我目前正在处理快速增长的(Java)代码库,并且正在努力定义我们的版本控制做法。为了给您一些背景知识,我们的程序只能在远程服务器上运行(该服务器包含大量数据,我们无法将其移至其他任何地方)。到目前为止,我们都在本地计算机上进行编码,并且每次想要查看输出时都需要提交(我们使用git),这远非理想。有什么简单的方法可以避免这种情况吗?

现在,我们还只使用了一个分支(我知道),这在代码库稳定性方面是非常糟糕的做法。 master分支是在本地编译的(这是一个具有许多文件和依赖项的IntelliJ IDEA大项目),然后在提交过程中将二进制文件推送到服务器。我想将编译过程移到服务器上,因此我们不必在本地进行编译。您将如何处理(我特别担心依赖项)?

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

首先,我想指出,使用单个分支不一定是一件坏事:  1.如果要“破坏”代码,有多种方法可以阻止代码合并到远程主数据库中  2.对于某些团队设置,一个分支机构可以使编码更快,更安全(通过鼓励许多小的更改来代替少数的大更改)

但是请继续回答有关“远程构建”的问题。 每当推送/合并代码时,您都可以使用Bamboo / jenkins /其他CI服务器在远程代理(可能是目标计算机)上构建代码。 为了管理您的构建(特别是帮助进行依赖性管理),我建议您使用maven / gradle(同样,如果对您的代码库有意义,您可能希望将maven工件“部署”到远程服务器上)