具有相同接口和flysystem的Github/Bitbucket api。

1.0.0 2016-06-22 01:35 UTC

This package is auto-updated.

Last update: 2024-09-17 09:41:24 UTC


README

Build Status Scrutinizer coverage Scrutinizer quality Source License

sebwite/git 包提供了在 githubbitbucket API 调用和文件系统操作之间无缝切换的功能。为 Laravel 5 框架创建。

该包遵循 FIG 标准 PSR-1、PSR-2 和 PSR-4,以确保共享 PHP 代码之间的高互操作性。

快速概述

有关 完整文档,请查看 sebwite-git 包的文档。

配置

config/services.php 中定义您的连接。

return [
    'conn1' => [
        'driver'    => 'bitbucket', // bitbucket | github
        'auth'      => Sebwite\Git\Manager::AUTH_BASIC,
        'username'  => 'user1',
        'password'  => 'passwd'                
    ],
    'conn2' => [
        'driver'    => 'bitbucket', // bitbucket | github
        'auth'      => Sebwite\Git\Manager::AUTH_OAUTH,
        'key'       => 'a#W23r2baaaf',
        'secret'    => 'we8r9w1ef32f'                
    ],
    'conn3' => [
        'driver'    => 'github', // bitbucket | github
        'auth'      => Sebwite\Git\Manager::AUTH_TOKEN,
        'secret'    => 'asAER4562aw32po'       
    ]
];    

文件系统

$fs = Git::getFilesystem($repo, $owner = null, $ref = null);
$fs->exists('composer.json');
$com = $fs->get('composer.json');
// the other Flysystem methods yo are most likely familiar with..

API 调用

Git::getUser();
Git::getUsername();
Git::listWebhooks($repo, $owner = null);
Git::getWebhook($repo, $uuid, $owner = null);
Git::createWebhook($repo, array $data, $owner = null);
Git::removeWebhook($repo, $uuid, $owner = null);
Git::listOrganisations($owner = null);
Git::listRepositories($owner = null);
Git::createRepository($repo, array $data = [ ], $owner = null);
Git::deleteRepository($repo, $owner = null);
Git::getBranches($repo, $owner = null);
Git::getMainBranch($repo, $owner = null);
Git::getRepositoryManifest($repo, $ref, $owner = null);
Git::getTags($repo, $owner = null);
Git::getRaw($repo, $ref, $path, $owner = null);
Git::getChangeset($repo, $ref, $path, $owner = null);
Git::getRepositoryCommits($repo, $owner = null);
Git::getBranchCommits($repo, $branch, $owner = null);

转换器

转换器负责将原始 API 调用响应数据转换为通用、相似的响应。如果需要,您可以扩展并使用自己的实现。还提供了一个 NullTransformer,它不会进行任何转换。

Git::setTransformer(NullTransformer::class);
Git::setTransformer(BitbucketTransformer::class);
Git::setTransformer(GithubTransformer::class);