2015-05-22 180 views
1

我们正在开发一个Yii web应用程序,并在本地笔记本电脑中设置后,我们将项目推送到一个git存储库(没有vendor目录)。 现在我想把它放在另一台本地机器上,但是当我尝试这样做时,当然供应商目录不存在,我得到一些错误(例如访问index.php时出现空白页面,运行需求时出错.PHP ...)。从git克隆Yii项目

我是否还应该推送供应商目录,或者更好地为每个本地机器下载yii2框架?在第二种情况下,我应该怎么做,因为我们以前已经使用作曲家创建项目,我们不想再次调用它?还是有更好的方法来处理与git的Yii项目?

+0

你用什么命令添加和提交? – Gogol

+0

当然你可以忽略'vendor'文件夹,大多数开发者都这样做,因为项目可以永久更新,但它不依赖于代码,所以每个人都可以通过'composer'获得依赖关系。 – iamawebgeek

回答

4

这很简单,如果你使用composer。 Composer是一个管理项目依赖和所需库的软件包管理器。

所以没有必要将所有第三方扩展(vendor文件夹)上传到git。 Composer将为应用程序安装依赖项(例如库)。

使用官方作曲家documentation

使用命令php composer.phar install composer将从composer.json中获取软件包,如果您已经注册了yiisoft/yii-install的回调函数,它不仅会下载代码,还会调用yiic并创建一个标准的Web应用程序框架。给定的位置。

如何在Yii中使用作曲家,您可以找到here

+0

它不回答这个问题。 – Gogol

+0

为什么不呢? 1.没有必要将'vendor'推到git上。 2.如果使用了作曲家 - 只需再次使用它来获得依赖关系。 3.作曲者是用git处理项目的不错方法。 – Bfcm

+0

@ noc2spamツ你错了,这是一个合适的答案。 upvoted,想写的相同:) – iamawebgeek

0

使用composer install来安装供应商文件的依赖关系。

如果您试图从github上克隆您正在开发的yii项目。 的composer.json有序进行修改,以更新的

chmod 777 runtime 
chmod 777 web/asset 
chmod 755 yii 

作曲家之前的权限安装。

composer.json只更改postCreateProject的权限。您必须将其修改为post-install-cmd或将其添加到您的composer.json中。修改后的composer.json可以在这里找到:

https://github.com/aznchat100/basic/blob/master/composer.json

参见:https://adamcod.es/2013/03/07/composer-install-vs-composer-update.html 以更好地了解compser的安装和作曲家更新差异。