我有两个api版本和两个php api包装器。现在两个包装都在两个不同的回购。两个存储库的原因是两个api非常不同。但我想的是,如果我将它们组合在一个存储库中并为每个存储库使用不同的命名空间,它会是什么样子。它看起来会更像这样。
Acme\Api\V1\Client
Acme\Api\V1\Endpoints
Acme\Api\V2\Client
Acme\Api\V2\Endpoints
我的问题是从长远来看,维护这两个版本会是什么样子?我想在这里修复V1的错误修复V2的修复错误,对V1进行重大更改,这需要对两者进行重大的语义版本更改。如果我将它们分开,我可以更好地控制软件包的版本控制,但我也失去了它们共享的一些常用功能。
将常用功能拉出到他们共享的NuGet包中。然后,您可以将存储库分开,避免在更新公共代码时重复工作。