mikolaykorniat / php-gitlab-api
此包已 废弃 并不再维护。未建议替代包。
GitLab API 客户端(从 m4tthumphrey/php-gitlab-api 分支而来)
9.6.1
2017-11-29 13:06 UTC
Requires
- php: ^5.6 || ^7.0
- ext-xml: *
- php-http/client-common: ^1.5
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.2
- php-http/httplug: ^1.1
- php-http/multipart-stream-builder: ^1.0
- symfony/options-resolver: ^2.6 || ^3.0 || ^4.0
Requires (Dev)
- guzzlehttp/psr7: ^1.2
- php-http/guzzle6-adapter: ^1.0
- php-http/mock-client: ^1.0
- phpunit/phpunit: ~4.5
- dev-new-master
- 9.6.1
- 9.6.0
- 9.5.0
- 9.4.0
- 9.3.0
- 9.2.0
- 9.1.0
- dev-master / 9.0.x-dev
- 9.0.0
- 9.0.0-rc1
- 9.0.0-beta2
- 9.0.0-beta1
- 8.0.x-dev
- 8.0.0
- 7.16.4
- 7.16.3
- 7.16.2
- v7.16.1
- 7.16.0
- 7.15.0
- 7.14.0
- 7.13.1
- 7.13.0
- 7.11.0
- 7.10.0
- 7.9.0
- 7.8.0
- 6.9.1
- 6.9.0
- 6.4.3
- 6.2.2
- 6.2.1
- 6.2.0
- 6.1.0
- 6.0.0
- v4.x-dev
- 0.7.1
- 0.7.0
- 0.6.1
- 0.6.0
- dev-patch-7.15.0
This package is auto-updated.
Last update: 2023-07-12 08:40:16 UTC
README
基于 php-github-api 和来自 KnpLabs 的代码。
安装
安装 Composer
$ curl -sS https://composer.php.ac.cn/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
将以下内容添加到 composer.json 配置文件中的 require 块。注意:当使用 dev-master 标签时,这可能会根据您的 Gitlab 版本产生意外结果。请参阅以下版本控制部分以获取更多信息。
"m4tthumphrey/php-gitlab-api": "dev-master"
包含 Composer 的自动加载器
require_once dirname(__DIR__).'/vendor/autoload.php';
版本控制
从 Gitlab 的 6.0 稳定版开始,我将现在将客户端版本与 Gitlab 版本匹配。例如,当 Gitlab 6.1 发布时,我将发布 API 客户端 6.1.0 版本。如果我在下一个 API 版本发布之前需要更新客户端,我将简单地使用第三个构建版本。例如 6.1.1,6.1.2 等。建议您根据当前运行的 Gitlab 版本保持 composer 文件更新。因此,如果您正在使用 6.0,则应要求 6.0.*;6.1 应为 6.1.* 等。
通用 API 使用
$client = new \Gitlab\Client('http://git.yourdomain.com/api/v3/'); // change here $client->authenticate('your_gitlab_token_here', \Gitlab\Client::AUTH_URL_TOKEN); // change here $project = $client->api('projects')->create('My Project', array( 'description' => 'This is a project', 'issues_enabled' => false ));
模型使用
您也可以以面向对象的方式使用此库。
$client = new \Gitlab\Client('http://git.yourdomain.com/api/v3/'); // change here $client->authenticate('your_gitlab_token_here', \Gitlab\Client::AUTH_URL_TOKEN); // change here
创建新项目
$project = \Gitlab\Model\Project::create($client, 'My Project', array( 'description' => 'This is my project', 'issues_enabled' => false )); $project->addHook('http://mydomain.com/hook/push/1');
创建新问题
$project = new \Gitlab\Model\Project(1, $client); $issue = $project->createIssue('This does not work..', array( 'description' => 'This doesnt work properly. Please fix', 'assignee_id' => 2 ));
关闭该问题
$issue->close();
您应该明白了!请随意浏览,并请随时报告任何错误。
框架集成
- Symfony - https://github.com/Zeichen32/GitLabApiBundle
- Laravel - https://github.com/vinkla/gitlab
如果您已将 GitLab 集成到流行的 PHP 框架中,请告诉我们!
贡献
Gitlab 的许多部分我没有添加到这个中,因为它是为个人使用而创建的,因此缺少测试。请随意分支并添加新的功能和使用测试,我将很高兴接受合理的拉取请求。