这可能是一个非常幼稚的问题,但我试图理解Git的Subtree和PHP的Composer依赖关系管理之间在实用上的区别。在丢弃Git子模块之后,我开始使用Git子树。但是现在有了Composer (用于PHP)。由于我的大多数项目都是基于PHP的,所以我正在考虑放弃子树以支持Composer。
例如,我有多个Wordpress网站。我想要拉动Wordpress本身和我想要使用的插件。我可以通过Git Subtree和Composer实现这一点,对吗?
如果我没有在上游的子文件夹中提交/推送代码的用例,但只希望将最新/特定的版本拖到子文件夹中,那么Subtree和Composer是否提供了相同的实用程序?
在我的用例中,我觉得Composer比Git Subtree更容易使用,更容易在子文件夹中获得另一个/更新版本的脚本,而不需要将那些被拉出的子文件夹文件提交到Git中。
对我的这种理解有什么想法吗?这种策略有问题吗?或者两者是完全不同的,没有任何相似之处?
发布于 2014-01-08 10:20:36
有很多理由支持作曲家。
实际上,管理整个项目和供应商库本身的依赖关系。因此,如果您需要一个包,它将得到所有所需的东西或通知您的错误。
管理版本也很简单,对于您下载的每个包,您都可以指定它应该更新的版本(因此您可以决定只更新包的次要版本,或者完全使用dev-master)。
Composer也为自动加载提供了一些帮助。使用-o使您的项目运行得更快一些
只有开发包才能使您更容易地管理生产设置。
如果供应商提供composer功能,我发现几乎没有理由使用子模块。
https://stackoverflow.com/questions/20992551
复制相似问题