您如何在开发过程中正确测试作曲家包



更新/我的解决方案:

我意外没有从我的作曲家那里删除VCS的要求。钥匙。现在,我的理解(基于刚刚发生的事情),在运行时处理了composer.json的自动加载部分。如果这是正确的,我可能已经解决了我的问题。(false,但是如果the the the the the the the the the the namespace name the namespace name丢失了the the the the the the the the the the the the the the the Confusion',则将抛出无效的异常。>

PSR-4自动加载器是GIT存储库的独立性,并且不需要我在测试之前进行更改,因此此解决方案足以满足我的目的。

,如果有人以更广泛的方式对我的问题有一个答案,我现在将打开这个问题。(即标题中所述的问题)

问题:

我正在尝试主要在特定项目上构建一些东西,但是我认为这对我决定将其制造为作曲家包的其他人很有用。

我想做的是在git存储库上开发作曲家包,然后在我自己的项目中进行手动测试。

我发现的解决方案如下如下,但两者都足够:

在Project的Composer.json

中包括本地GIT回购为VCS存储库

这种方法的最大问题是,对于每一个小变化,我都需要在能够测试它们之前进行更改。我会为自己的愚蠢的语法或API错误而获得大量提交,因为我没有测试 - 不酷。

将软件包文件夹移动到项目文件夹中,并将其添加到项目"自动加载"中composer.json

中的部分

不幸的是,此方法存在相同的问题。如果我想执行手动测试,我需要提交更改,否则在运行" Composer Update"时出现以下消息:(请参阅" update/meats"/my my solution&quot&quot&quot'header) <</strong>

[RuntimeException]
Source directory /srv/http/my-project/vendor/my-package
has unpushed changes on the current branch:
M     composer.json                                                             
A     src/EditorApplication.php

编写一个shell脚本,该脚本将源文件复制,将我的源文件夹中的与git相关的文件排除在我的项目

中的自动加载文件夹中

必须有一种方法可以在作曲家中做一些如此必要的事情,而无需求助于此事。如何在不执行软件包本身内部实现的情况下测试对作曲家软件包的不交易更改?甚至可能吗?

我想做的是在git存储库上开发作曲家包,然后在我自己的项目中进行手动测试。

您如何在不执行软件包本身内部实现的情况下测试对作曲家软件包的无关更改?甚至可能吗?

您可以将本地儿童项目的存储库定义为Root Project composer.json中的path存储库。path允许您依靠本地目录。

参考:https://getcomposer.org/doc/05-repositories.md#path

当儿童项目的本地开发阶段完成时,您可以将其发布并立即将其标记以将第一个版本淘汰。您正在通过在Packagist上列出一个版本来跳过dev-master阶段,然后可以由/任何父级项目包含。

相关内容

  • 没有找到相关文章

最新更新