开发一个有两个名字的项目?

时间:2014-09-08 12:32:00

标签: java git project-management

我正在开发一个开源项目,该项目既适用于同名公司,也适用于其他名称下的社区。我希望能够轻松地将更改从一个更改为另一个,但名称和许可证是不同的,因此我不知道如何将修改从一个应用到另一个。让我们举个例子:

ProjectOne :
file : src/main/projectone.main :
-> /** This file is part of ProjectOne... **/
-> contentA

ProjectTwo :
file : src/main/projecttwo.main :
-> /** This file is part of ProjectTwo... **/
-> contentA

现在,请考虑我正在修改projectTwo的内容:

contentA -> contentB

我明白了:

ProjectOne :
file : src/main/projectone.main :
-> /** This file is part of ProjectOne... **/
-> contentA

ProjectTwo :
file : src/main/projecttwo.main :
-> /** This file is part of ProjectTwo... **/
-> contentB

我希望能够轻松修改ProjectOne,但保留自己的许可证,软件包和项目名称......

ProjectOne :
file : src/main/projectone.main :
-> /** This file is part of ProjectOne... **/
-> contentB

ProjectTwo :
file : src/main/projecttwo.main :
-> /** This file is part of ProjectTwo... **/
-> contentB

我的项目使用Maven作为依赖项,Netbeans作为IDE和git来管理修订。是否有一个技巧(分支,插件......)可以帮助我做到这一点?

3 个答案:

答案 0 :(得分:1)

只需将名称和许可证放在单独的文件中,只使用一个中继,然后使用正确的名称/许可证文件释放这两个版本。我建议使用一个脚本自动化发布制作过程,该脚本采用正确的名称/许可证文件和最终版本并生成自定义版本。

答案 1 :(得分:0)

在内容目录(文件夹)中创建项目名称目录

示例:您有两个名为的项目:

       1. Proj1 
       2. Proj2

并且您有内容目录命名内容,您可以在其中存储许可证文件。现在你需要做的是在内容目录中创建两个目录,即

       content / proj1 / license.htm
               / proj2 / license.htm

以同样的方式,无论你想在项目中区分什么,都要使它们的目录具有相同的名称,即proj1和proj2。根据项目,您可能需要在图像徽标,背景和许多其他内容中执行此操作。制作一个属性文件,你要放置一个字段,你必须在其中指定项目或构建的任何一个名称,即proj1或proj2,动态地你必须决定使用哪个。

这样你的静态内容会有所不同,但你的逻辑和代码会相同。

答案 2 :(得分:0)

您也可以尝试开发一个脚本来替换源代码/文件名中对项目名称的任何引用。