public class MagicGitSyncService extends Object
magic-api 的 git 插件默认只在应用启动时拉取远程仓库,运行期间推送到远程的代码
不会自动生效。此服务执行一次 git pull,检测到有新提交时调用
MagicResourceService.refresh() 将最新脚本重新加载进内存,
从而无需重启应用即可在 Web 页面看到最新代码。
仅提供手动触发能力(由编辑器工具栏"拉取"按钮调用),不做定时轮询。
仓库操作与凭证解析统一委托 GitRepoHelper:以触发操作的编辑器登录用户名为
匹配键查找个人凭证(数据库表 → yml 列表 → 单人配置 → 全局账号),
从而支持多个开发者各自用自己的 Git 身份拉取/提交代码。
| Constructor and Description |
|---|
MagicGitSyncService(GitRepoHelper helper,
org.ssssssss.magicapi.core.service.MagicResourceService magicResourceService) |
| Modifier and Type | Method and Description |
|---|---|
String |
commit(String editorUsername,
String message)
提交本地全部变更并推送(编辑器"提交"按钮调用),
提交人与推送凭证均按编辑器登录用户名匹配个人凭证
|
boolean |
sync()
执行一次 git pull,若有新提交则刷新内存中的接口(不区分操作人)
|
boolean |
sync(String editorUsername)
执行一次 git pull,按编辑器登录用户名匹配个人凭证;若有新提交则刷新内存中的接口
|
public MagicGitSyncService(GitRepoHelper helper, org.ssssssss.magicapi.core.service.MagicResourceService magicResourceService)
public boolean sync()
throws Exception
Exceptionpublic boolean sync(String editorUsername) throws Exception
editorUsername - magic-api 编辑器登录用户名,可为 nullExceptionCopyright © 2026. All rights reserved.