【发布时间】:2018-09-29 06:55:25
【问题描述】:
由于天气寒冷,我决定成为一名开源贡献者。我选择了Yii2项目,看了doc.
我已经完成的步骤: 1. 使用所有必要的 php 扩展创建虚拟主机 2. fork Yii2 仓库并克隆到宿主机上 3. 添加上游,运行composer和npm 4. php build/build dev/app 高级
第 4 步后,我在控制台中收到错误:
PHP Warning 'yii\base\ErrorException' with message 'chdir(): No such file or directory (errno 2)'
in /home/ghopper/Projects/yii2.test/build/controllers/DevController.php:178
原来脚本尝试执行cd apps/advanced,但这个文件夹不存在。所以,我自己创造了它,它解决了这个问题。
我偶然发现“现在你有一个可以在 Yii 2 上进行黑客攻击的工作场所。”在文档中,但我认为我的回购有问题。
首先,我的目录结构与original repo 完全相同。没有前端和后端目录。第二个问题是关于apps/advanced - 我应该从哪里得到它?
更新:
我指定了 repo url 并得到新的错误:
ghopper@farm /var/www/yii2.test (master) $ php build/build dev/app advanced https://github.com/yiisoft/yii2-app-advanced.git
cloning application repo 'advanced' from 'https://github.com/yiisoft/yii2-app-advanced.git'...
Cloning into '/var/www/yii2.test/apps/advanced'...
remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6293 (delta 2), reused 4 (delta 2), pack-reused 6286
Receiving objects: 100% (6293/6293), 1.32 MiB | 204.00 KiB/s, done.
Resolving deltas: 100% (3389/3389), done.
Checking out files: 100% (270/270), done.
done.
cleaning up application 'advanced' vendor directory...
done.
updating composer for app 'advanced'...
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 66 installs, 0 updates, 0 removals
- Installing yiisoft/yii2-composer (dev-master f4cb50d): Downloading (100%)
- Installing sebastian/version (2.0.1): Downloading (100%)
- Installing sebastian/object-reflector (dev-master 7707193): Downloading (100%)
- Installing sebastian/recursion-context (dev-master dbe1869): Downloading (100%)
- Installing sebastian/object-enumerator (dev-master 06d95dc): Downloading (100%)
- Installing sebastian/global-state (dev-master 30367ea): Downloading (100%)
...
codeception/base suggests installing stecman/symfony-console-
completion (For BASH autocompletion)
codeception/base suggests installing symfony/phpunit-bridge (For phpunit-bridge support)
Writing lock file
Generating autoload files
done.
linking framework and extensions to 'advanced' app vendor dir...
Removing dir /var/www/yii2.test/apps/advanced/vendor/yiisoft/yii2.
Creating symlink for /var/www/yii2.test/apps/advanced/vendor/yiisoft/yii2.
Removing dir /var/www/yii2.test/apps/advanced/vendor/yiisoft/yii2-gii.
Creating symlink for /var/www/yii2.test/apps/advanced/vendor/yiisoft/yii2-gii.
cloning extension repo 'gii' from 'git@github.com:yiisoft/yii2-gii.git'...
Cloning into '/var/www/yii2.test/extensions/gii'...
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
done.
cleaning up extension 'gii' vendor directory...
done.
updating composer for extension 'gii'...
PHP Warning 'yii\base\ErrorException' with message 'chdir(): No such file or directory (errno 2)'
in /var/www/yii2.test/build/controllers/DevController.php:233
git@github.com: Permission denied (publickey). 是什么意思?
【问题讨论】:
-
我尝试了这些说明,没有任何问题。但是如果你想使用框架核心,你可能不需要这个应用程序 - 无论如何新功能和错误修复都应该通过单元测试来验证,我不需要在实际应用程序中进行测试。
-
我应该怎么做才能在 repo 中获取
apps目录?它在原始仓库中不存在。或者我根本不需要这个目录,问题是别的什么?
标签: git yii2 open-source