将 SATIS 与共享内部库一起使用的正确方法是什么
What's the proper way to use SATIS with shared internal library
问题:
对于用 Symfony 编写的 2 个项目,我的实体现在和将来都是相同的。我们想到了在项目之间共享它们的想法。第一个想法是使用 git 子模块,但每个人都知道这不是最舒服的解决方案。所以我们将它们作为单独的 git 存储库放在 Satis 中。
在一个项目中,我想在应用程序目录 src/AppBundle/Entity
中编辑它们,而在另一个项目中,它们可以下载到 vendor
目录中。
问题是如何设置作曲家,这样我就可以在 vendor
目录之外使用它们。提交会是什么样子?为此需要 git 子模块吗?
我已经阅读了关于存储库的 "type" : "path"
,我已经检查了作曲家安装程序。我现在想到的除了符号链接之外还有其他解决方案吗?
所以总结一下。
如何在应用程序目录中的一个项目中使用共享库,而在供应商目录中的另一个项目中使用共享库?
这是对我有用的解决方案。
我已将内部库克隆到项目中。
在主项目中,我已将此目录添加到 .gitignore,在 composer.json 中,我已添加以下行
"repositories": [
{
"type": "path",
"url": "internal-library",
"options": {
"symlink": true
}
},
{
"type": "composer",
"url": "http://our-satis"
}
],
在另一个项目中,我只添加了 satis 存储库(实体将仅在一个项目中更改并导入到另一个项目中)。
"repositories": [
{
"type": "composer",
"url": "http://our-satis"
}
],
所以现在在开发中,当我做 composer update 时,库被符号链接到 vendor 目录。如果我没有这个目录,它将从 satis 获取。在生产存储库中将从 satis 获取,因为我的目录不存在。我在 PSR 加载方面遇到了一些问题,但一切都按预期进行。
我希望它能帮助遇到与我相同问题的人。
问题:
对于用 Symfony 编写的 2 个项目,我的实体现在和将来都是相同的。我们想到了在项目之间共享它们的想法。第一个想法是使用 git 子模块,但每个人都知道这不是最舒服的解决方案。所以我们将它们作为单独的 git 存储库放在 Satis 中。
在一个项目中,我想在应用程序目录 src/AppBundle/Entity
中编辑它们,而在另一个项目中,它们可以下载到 vendor
目录中。
问题是如何设置作曲家,这样我就可以在 vendor
目录之外使用它们。提交会是什么样子?为此需要 git 子模块吗?
我已经阅读了关于存储库的 "type" : "path"
,我已经检查了作曲家安装程序。我现在想到的除了符号链接之外还有其他解决方案吗?
所以总结一下。
如何在应用程序目录中的一个项目中使用共享库,而在供应商目录中的另一个项目中使用共享库?
这是对我有用的解决方案。
我已将内部库克隆到项目中。
在主项目中,我已将此目录添加到 .gitignore,在 composer.json 中,我已添加以下行
"repositories": [
{
"type": "path",
"url": "internal-library",
"options": {
"symlink": true
}
},
{
"type": "composer",
"url": "http://our-satis"
}
],
在另一个项目中,我只添加了 satis 存储库(实体将仅在一个项目中更改并导入到另一个项目中)。
"repositories": [
{
"type": "composer",
"url": "http://our-satis"
}
],
所以现在在开发中,当我做 composer update 时,库被符号链接到 vendor 目录。如果我没有这个目录,它将从 satis 获取。在生产存储库中将从 satis 获取,因为我的目录不存在。我在 PSR 加载方面遇到了一些问题,但一切都按预期进行。
我希望它能帮助遇到与我相同问题的人。