brookinsconsulting / bcgithubstarsbundle
BC GitHub Stars Bundle for Symfony 3。为导入和显示GitHub仓库中最受欢迎的数据提供基本解决方案。非常适合寻求与GitHub ReST API进行交互的开发者。
Requires
- php: >=5.6.0
- braincrafted/bootstrap-bundle: ~2.0
- brookinsconsulting/bcknockoutjsbundle: dev-master
- brookinsconsulting/github-api-bundle: dev-master
- doctrine/orm: *
- jms/di-extra-bundle: ^1.8
- jquery/jquery: 1.11.*
- knplabs/github-api: @dev
- knplabs/knp-menu-bundle: ^2.0
- knplabs/knp-paginator-bundle: ^2.5
- php-http/guzzle6-adapter: @dev
- symfony/assetic-bundle: ^2.8
- symfony/symfony: 3.2.*
- twbs/bootstrap: 3.0.*
This package is auto-updated.
Last update: 2024-09-29 04:49:17 UTC
README
此包实现了一种解决方案,提供Symfony命令以搜索和导入GitHub仓库数据并填充本地数据库仓库。
版本
-
BC GitHub Stars的当前版本为0.1.4
-
上次主要更新:2017年2月24日
版权
-
BC GitHub Stars版权所有1999 - 2017 Brookins Consulting
-
更多信息,请参阅COPYRIGHT.md
许可证
Bc GitHub Stars遵循GNU通用公共许可证。
完整的许可证协议包含在LICENSE文件中。
Bc GitHub Stars是免费软件:您可以在GNU通用公共许可证的条款下重新分发和/或修改它,该许可证由自由软件基金会发布,可以是许可证的第2版或更高版本,或根据您的选择。
Bc GitHub Stars以希望它将是有用的方式分发,但没有任何保证;甚至没有关于适销性或特定用途的隐含保证。有关详细信息,请参阅GNU通用公共许可证。
GNU GPL赋予您在特定条件下使用、修改和重新分发Bc GitHub Stars的权利。GNU GPL许可证与软件一起分发,请参阅LICENSE文件。
它也可以在https://gnu.ac.cn/licenses/gpl.txt找到。
您应该已经收到GNU通用公共许可证的副本,它与Bc GitHub Stars一起包含在LICENSE文件中。
如果没有,请参阅https://gnu.ac.cn/licenses/。
根据GNU GPL使用Bc GitHub Stars是免费的(指自由)。
有关更多信息或问题,请联系:license@brookinsconsulting.com
要求
使用BC GitHub Stars包有以下要求
Symfony版本
-
请确保您使用的是Symfony版本2.8+(必需)或更高版本。
-
与Symfony 3.2.x设计并测试
PHP版本
- 请确保您有PHP 7.1或更高版本。
功能
命令
此解决方案提供以下symfony命令
- 命令:
bc:gs:import
服务
-
服务以协助搜索、导入和更新GitHub仓库
- GitHubStars
- GitHubStarsComand
- GitHubStarsController
- GitHubRepositoryModel
依赖关系
- 此解决方案在任何方面都不依赖于eZ Platform
- 此解决方案依赖于symfony/symfony
- 此解决方案依赖于doctrine/orm和doctrine/doctrine-bundle
- 此解决方案依赖于knpLabs/php-github-api
- 此解决方案依赖于php-http/guzzle6-adapter
- 此解决方案依赖于jms/di-extra-bundle
- 此解决方案依赖于brookinsconsulting/bcknockoutjsbundle
- 此解决方案依赖于brookinsconsulting/github-api-bundle
- 此解决方案依赖于 symfony/assetic-bundle
- 此解决方案依赖于 braincrafted/bootstrap-bundle
- 此解决方案依赖于 twbs/bootstrap
- 此解决方案依赖于 jquery/jquery
- 此解决方案依赖于 knplabs/knp-paginator-bundle
- 此解决方案依赖于 knplabs/knp-menu-bundle
这些依赖关系在bundle的composer.json文件中有更详细的文档
用例要求
此解决方案是为了提供一个简单的方法来导入和显示具有可变星级标准的GitHub PHP仓库
用例文档
https://developer.github.com/v3/search/ https://developer.github.com/v3/search/#search-repositories
安装
通过Composer安装Bundle
从您的项目根目录运行以下命令以安装bundle
bash$ composer require brookinsconsulting/bcgithubstarsbundle dev-master;
Bundle激活
在文件app/AppKernel.php
中的registerBundles
方法中,将以下内容添加到$bundles = array(
变量定义中。
// Brookins Consulting : BcGitHubStarsBundle Requirements
new Maxikg\GithubApiBundle\GithubApiBundle(),
new JMS\DiExtraBundle\JMSDiExtraBundle($this),
new JMS\AopBundle\JMSAopBundle(),
new BrookinsConsulting\BcKnockoutJSBundle\BcKnockoutJSBundle(),
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Knp\Bundle\PaginatorBundle\KnpPaginatorBundle(),
new Knp\Bundle\MenuBundle\KnpMenuBundle(),
new Braincrafted\Bundle\BootstrapBundle\BraincraftedBootstrapBundle(),
new BrookinsConsulting\BcGitHubStarsBundle\BcGitHubStarsBundle()
清除缓存
清除Symfony缓存(必需)。
php bin/console cache:clear;
创建数据库
php bin/console doctrine:database:create;
创建数据库模式
php bin/console doctrine:schema:create;
路由安装
编辑您的app/config/routing.yml
文件,并添加以下代码以导入此bundle的路由
app_githubstars:
resource: "@BcGitHubStarsBundle/Resources/config/routing.yml"
资产安装
php bin/console assets:install web --symlink --relative
Assetic安装
php bin/console assetic:dump --env=prod
参数自定义
支持参数
注意:目前没有使用或要求参数。以下内容存在于未来的扩展和重构中。
请查看Resources/config/githubstars.yml
和Resources/config/services.yml
以了解支持默认参数。
使用
一旦正确安装,解决方案默认配置为虚拟工作。
运行导入命令
要从GitHub导入仓库数据,请运行以下命令,并会提示您输入所需的参数
php -d memory_limit=-1 bin/console bc:gs:import;
使用shell参数运行创建命令
对于重复使用相同的输入,您可以使用shell参数更快地运行脚本。只需运行
php -d memory_limit=-1 bin/console bc:gs:import -v --token=<github-token-string> --starsQuery=">500" --iterationStore --update
starsQuery Shell Arguement 输入语法/格式
starsQuery shell参数输入格式/语法类似于github reset api语法。有关此语法的更多信息,请参阅可用的github文档:https://help.github.com/articles/searching-repositories/#search-based-on-the-number-of-stars-a-repository-has 和 https://help.github.com/articles/search-syntax/。
iterationStore Shell Arguement
此参数虽然可选,但可以大大提高记录填充到数据库的速度,对于大型结果集查询推荐使用。这确保了如果命令因任何原因(手动或自动)退出,至少在退出前存储了一些数据。
update Shell Arguement
此参数可选,确保在过程中更新现有的本地数据库记录。这在多次运行命令时非常有用,并确保更新了包括lastPushDate字段在内的仓库元数据。
使用:网站UI
一旦正确安装,解决方案默认配置为虚拟工作。
可用的视图
要使用可用的视图,只需使用您的网络浏览器导航到它们。
注意
此bundle提供的工具目前与GitHub.com提供的工具非常相似
测试
一旦正确安装和配置,解决方案就可以正常工作。
注意:在撰写本文时,尚未实现xss测试和适当的单元测试。
故障排除
阅读FAQ
某些问题比其他问题更常见。最常见的列表在Resources/doc/FAQ.md中。
支持
如果您发现本文件或常见问题解答(FAQ)中没有处理的问题,可以通过支持系统联系布鲁金斯咨询:http://brookinsconsulting.com/contact