使Composer和Git协同工作

时间:2016-01-22 18:22:53

标签: git yii2 composer-php

我遇到了问题,不知道如何解决。我正在开发一个由git控制的版本的项目。实际的框架是通过composer(Yii2)安装的。现在我切换机器并想重新安装所有内容,并将其更新到git存储库的当前状态。但无论哪种方式,我首先使用composer来安装框架或首先克隆git存储库,后续步骤总是抱怨该目录不为空。克隆时的一个明显问题是供应商目录在框架所在的位置被忽略。如果我首先通过composer安装框架然后拉出存储库,Git也会抱怨(错误:以下未跟踪的工作树文件将被合并覆盖:...)。

任何想法如何解决这个问题?

提前致谢

2 个答案:

答案 0 :(得分:0)

也许,我没有正确解决问题,但您是否手动克隆yiisoft/yii2存储库?通常你不会关心vendor dir及其内容,因为必须在git中忽略它。您必须composer.json"yiisoft/yii2": "*"要求,并且全部都是composer init

要理解这一点,请创建一个空目录,执行composer update,添加一个Yii2需求行并调用vendor - 它将创建{{1}}目录并将其全部保湿,即Yii2需要。

查看https://github.com/yiisoft/yii2-app-basic

答案 1 :(得分:0)

首先应该使用git克隆项目,然后使用composer安装库,然后将带有这些库的目录添加到.gitignore中。在我的项目上使用这种方式,工作正常。即使你在git repo中有composer.json,你也只需要在git clone之后运行composer update并完成它。