breeze2/php-svn
Composer 安装命令:
composer require breeze2/php-svn
包简介
svn lib in php
README 文档
README
svn in php
install
$ composer require breeze2/php-svn
usage
<?php use BL\LibSvn\Exceptions\SvnException as SvnException; use BL\LibSvn\SvnAdmin as SvnAdmin; use BL\LibSvn\SvnClient as Svn; use BL\LibSvn\SvnConfAuthz as SvnAuthz; require 'path/to/vendor/autoload.php'; try { $parent_dir = '/path/to/svn/repos'; $svnclient_bin = '/path/to/svn/bin'; $svnadmin_bin = '/path/to/svnadmin/bin'; $svnadmin = new SvnAdmin($svnadmin_bin); $svn = new Svn($svnclient_bin); $authz = new SvnAuthz(); // create svn repo $repo_name = 'your_repo_name'; $repo_path = $parent_dir . '/' . $repo_name; $result = $svnadmin->create($repo_path); // make svn dir $svn->mkdir('/path/to/svn/repos/your_repo_name/dir'); $svn->mkdir(array( '/path/to/svn/repos/your_repo_name/dir1', '/path/to/svn/repos/your_repo_name/dir2/dir3', '/path/to/svn/repos/your_repo_name/dir4/dir5/dir6', )); // list svn dir $list = $svn->ls('/path/to/svn/repos/your_repo_name/dir', array( 'xml' => '' )); // get svn log $rev = '1'; $log = $svn->log('/path/to/svn/repos/your_repo_name', array( 'xml' => '', 'revision' => $rev, 'verbose' => '' )); // svn auth $authz_conf = '/path/to/svn/repos/your_repo_name/conf/authz'; $authz->open($authz_conf); // create group $authz->createGroup('group_name'); // delete group $authz->deleteGroup('group_name'); // list groups $list = $authz->groups(); // add member to group $authz->addUserToGroup('group_name', 'member_name'); // remove member from group $authz->removeUserFromGroup('group_name', 'member_name'); // list member of group $list = $authz->usersOfGroup('group_name'); // create path $authz->addRepositoryPath('path_name'); // delete path $authz->removeRepositoryPath('path_name'); // list paths $list = $authz->repositoryPaths(); // add member or group in path $authz->addUserToRepositoryPath('path_name', 'member_name', 'rw'); $authz->addUserToRepositoryPath('path_name', '@group_name', 'r'); $authz->addUserToRepositoryPath('path_name', 'member_name1', ''); // remove member or group in path $authz->removeUserFromRepositoryPath('path_name', 'member_name'); $authz->removeUserFromRepositoryPath('path_name', '@group_name'); // list member or group in path $list = $authz->membersOfRepositoryPath('path_name'); // get permission of member or group in path $permission = $authz->permissionOfUserInRepositoryPath('member_name', 'path_name'); $permission = $authz->permissionOfUserInRepositoryPath('@group_name', 'path_name'); // change permission of member or group in path $authz->addUserToRepositoryPath('path_name', 'member_name', 'r'); $authz->addUserToRepositoryPath('path_name', '@group_name', 'rw'); // save the changes of svn auth $authz->save(); } catch (SvnException $e) { echo $e->getOutput(); }
API
SvnAdmin::create(string $svn_repo_path, [array $option]); SvnClient::mkdir(string $svn_repo_path_dir, [array $option]); SvnClient::mkdir(array $svn_repo_path_dirs, [array $option]); SvnClient::ls(string $svn_repo_path_dir, [array $option]); SvnClient::ls(array $svn_repo_path_dirs, [array $option]); SvnClient::log(string $svn_repo_path, array $option); ...
breeze2/php-svn 适用场景与选型建议
breeze2/php-svn 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 25 次下载、GitHub Stars 达 0, 最近一次更新时间为 2017 年 09 月 26 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 breeze2/php-svn 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 breeze2/php-svn 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 25
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 5
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-09-26