Composer正在搞乱github

时间:2013-11-29 22:11:46

标签: git github composer-php

我最近使用composer通过git将我创建的包安装到我的项目中。然后我将项目的.gitignore文件转换为忽略vender/user.name/composer/的文件 vender/user.name/autoload.php和(我认为,这导致问题)vender/user.name/PackageName/.git目录。

所有被忽略的我都提交了这个项目并在github上遇到过这个问题:A broken link to a git repository

  1. 它不应该是“链接”到另一个git存储库,我需要的最后一件事就是这个项目引用了一个git存储库,这就是为什么我忽略了这个项目.git/文件中的.gitignore。 / LI>
  2. 当我决定推出一个新版本时,本地主机上的这个项目需要保持.git directory so I can do作曲家更新(主要是狗食我自己的项目)。 但是我需要能够提交和下载项目(相关项目也在上面的链接中链接)并看到文件夹: AisisAjax 对github仓库的引用,并且它是我可以遍历的常规文件目录。
  3. 我的Git ignore file can be seen here ...

    请帮助。无论我每次执行gihub时我做了什么,我都会看到这个引用(尽管它可能已损坏),而在我的本地机器上,我看到了AisisAjax中的文件。

1 个答案:

答案 0 :(得分:2)

你只是完全错了。

1)您似乎在sub-directory of your project中有一个composer.json。 Composer并没有真正支持它。

2)您需要忽略项目的.gitignore中的供应商目录,即don't appear to have

3)由于2并且缺乏对细节的关注,您已将Composer为组件下载的所有文件添加到主项目Git存储库中。 Composer不会将文件添加到存储库,因此您必须自己完成。

请原谅我,如果我错了,但根本问题是您似乎没有在任何Composer文件中设置项目名称,因此实际上并没有使用Composer来安装依赖项,而是正在进行自己。

e.g。 Aisis-Framework的作曲家文件应该包含它的名字。然后,您需要在Packagist上发布该包,或者将其列为根项目编写器文件中的存储库,以允许它作为依赖项从根项目安装,而不是自己安装。