我有两个开源项目laravel项目叫: 项目A和项目B,
我要开发一个开源的laravel扩展包叫 C,
ABC都在github上开源,
我想达到的效果是:
在A和B中都引扩展包C,
在开发A和B中都可以随时修改C,
可以把 ABC 都分别推送到 github 上,
请问有什么好的方案吗?
拜谢。
我有两个开源项目laravel项目叫: 项目A和项目B,
我要开发一个开源的laravel扩展包叫 C,
ABC都在github上开源,
我想达到的效果是:
在A和B中都引扩展包C,
在开发A和B中都可以随时修改C,
可以把 ABC 都分别推送到 github 上,
请问有什么好的方案吗?
拜谢。
使用 composer 管理.
在A,B项目中, composer.json 中添加
"require": {
// ...
"C的composer名字": "C的版本"
// ...
}
修改C的话, 是在单独的项目中, 修改以后, 在A,B中使用composer update C的名字
来更新.
1 回答4.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答581 阅读✓ 已解决
791 阅读
因为 Laravel 的依赖管理是基于 Composer 的,所以所有的扩展库,都建议使用 Composer 作为依赖管理。
而你这样的结构,其实只需要将 A B C 三个项目分别定义为三个 Composer 包即可。
通过 composer.json 的参数定义,将 C 定义为依赖 A B,之后在 Laravel 中引入 C 时,A B也会自动带入。
关于更多在 Laravel 中开发扩展包的指导,可以关注以下几个讲座
https://segmentfault.com/ls/1...
https://segmentfault.com/l/15...