我的应用程序有4个Java包。
com.me.utilities
com.me.widget
com.me.analysis
com.me.interface
所有程序包都取决于实用程序。小部件包取决于接口包。
这些实用程序可能对其他应用程序很有价值,因此它应该是自己的包。分析不依赖于小部件和接口,因此分析应该是自己的包。接口可能会更改,因为与之接口的组织可能会倒闭,因此接口应该是自己的包。
这只是一个生成一个可执行文件的应用程序。
在这个组织的基础上,我会对每个包进行提交,但不会对可执行文件进行提交。我想开始提交可执行文件。一种方法是将可执行文件提交到一个新的git档案中,而不与源代码有任何连接,但如果有一个可执行文件,并且没有正式的方式将其与源代码绑定,这听起来很鲁莽。
另一种听起来有点低效的方法是简单地启动一个新的git存档,它"添加"所有4个Java包的源代码,每个包都有许多Java文件,还"添加"可执行文件。这似乎有点奇怪,因为它没有尊重现有的4个git档案,这些档案已经知道它们各自的源代码集合。
将这4个包与它们的通用可执行文件联系在一起的正确方法是什么?
我使用SmartGit进行例程提交,并使用命令行git进行还原。如果此查询的解决方案需要,我愿意停止使用SmartGit。
看起来您正在寻找的是一个工件存储库,如Nexus、Artifactory、JCenter等。
这就是每次发布时通常发布构建生成的工件的地方。
这也是允许构建工具和IDE为项目使用的库获取工件的原因。因此,如果您最终将实用程序包变成一个单独的库,由几个不同的项目使用,则需要将其发布在这样的工件存储库中。Gradle和Maven都可以获得他们的工件,但也允许将工件发布到这样的工件存储库中。