我们的团队使用Maven管理Java项目。我们有一个策略,存储库的master分支上的所有代码都应该:
-SNAPSHOT版本(版本是使用Maven发布插件创建的)-SNAPSHOT。这在IntelliJ IDEA (版本15,build 143.1821.5)中有一个不幸的后果。假设Maven工件A依赖于Maven工件B的某个发布版本,1.2.3说。不过,B on master的当前代码将类似于1.2.4-SNAPSHOT。如果我在IDEA中同时加载A和B的源代码,转到B中用于A的类,然后执行Find Usages (Ctrl-单击类名或Alt-7),则找不到结果。但是,如果我在IDE中导航到1.2.4发行版的反编译类文件并执行Find Usages,它就会发现A中的用法。
我理解为什么会发生这种情况-- -SNAPSHOT版本的代码实际上没有被A使用--但是这种挑剔使得Find Usages在Maven工件中几乎毫无用处。然而,我似乎记得,在最近的某个时候,在过去的想法的Find Usages并不是那么挑剔。不幸的是,谷歌并没有发现其他人提到这个问题,也没有提到观念行为的改变,所以现在我们在想,我们只是在想象之前的行为。
那么,在执行Find Usages时,有谁知道如何忽略Maven模块上的版本不匹配呢?我们以前启用过的设置现在还找不到吗?
发布于 2022-03-31 08:14:34
我觉得你做得不对。
根据定义,主分支应该是一个发布版本(没有-SNAPSHOT)。
您希望与您的团队交谈,并回顾您的构建和发布过程。
阅读git流分支模型,了解更多关于分支策略的信息。
https://stackoverflow.com/questions/35931302
复制相似问题