{"id":16903784,"url":"https://github.com/dudiao/gits","last_synced_at":"2025-04-11T14:32:49.119Z","repository":{"id":150668602,"uuid":"266543970","full_name":"dudiao/gits","owner":"dudiao","description":"单体与微服务快速开发平台","archived":false,"fork":false,"pushed_at":"2024-05-16T17:22:28.000Z","size":926,"stargazers_count":5,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-25T10:42:34.597Z","etag":null,"topics":["java","spring-boot","spring-cloud"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dudiao.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-24T13:13:33.000Z","updated_at":"2024-02-20T14:53:15.000Z","dependencies_parsed_at":"2025-02-19T14:44:27.605Z","dependency_job_id":null,"html_url":"https://github.com/dudiao/gits","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dudiao%2Fgits","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dudiao%2Fgits/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dudiao%2Fgits/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dudiao%2Fgits/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dudiao","download_url":"https://codeload.github.com/dudiao/gits/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248419713,"owners_count":21100235,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","spring-boot","spring-cloud"],"created_at":"2024-10-13T18:28:21.076Z","updated_at":"2025-04-11T14:32:49.114Z","avatar_url":"https://github.com/dudiao.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gits 单体与微服务快速开发平台\n\n从入行到现在，一直受益于开源项目，Spring、SpringBoot、SpringCloud、MyBatis-plus、Swagger、Hutool等等，是开源项目让技术更好的服务于业务，也让技术人更好的生活。\n\n我们也想为开源贡献自己的力量，所以有了`Gits`：\n\n- `git`代表记录；\n- `s`既是单体的首写字母，也是复数，服务（service）的含义。\n\n`Gits`想要做到单体与微服务架构的统一，让各位大大专注业务，少点Bug，多陪陪家人。\n\n## 项目依赖关系\n\n![gits-dependency.png](doc/images/gits-dependency.png)\n\n## 技术栈\n\n- Java 1.8\n- Maven 3.5.3\n- SpringBoot 2.3.1.RELEASE\n\n## 项目介绍\n\n- 通过Maven打包的方式，兼容单体和微服务项目；\n- 深度融合SpringSecurity，通过`@EnableGitsResourceServer`注解，灵活控制服务是否被保护（后续考虑使用OAuth2）；\n- 核心业务包通过springboot自动装配的特性，结合@ConditionalOnMissingBean（存在指定bean就不装配），使得客户化开发和后续升级变的简单高效。\n\n## 项目规划\n\n### 业务功能模块 TODO\n\n1. 前端工程`Vue`：https://gitee.com/smileg/gits-ui\n2. ~~登录：认证与授权~~\n3. ~~用户模块~~\n4. ~~机构管理~~\n5. ~~角色权限~~\n6. 数据字典\n7. 参数管理\n8. 数据权限\n\n## 协议说明\n\n`LGPL`是`GPL`的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。\n\n但是如果修改LGPL协议的代码或者衍生，则所有修改的代码，涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用，但不适合希望以LGPL协议代码为基础，通过修改和衍生的方式做二次开发的商业软件采用。\n\n## 用户权益\n\n允许以引入不改源码的形式免费用于学习、毕设、公司项目、私活等。\n\n但未经过授权和不遵循`LGPL`协议二次开源或者商业化我们将追究到底。\n\n## 构建Dokcer镜像\n\n以腾讯云镜像仓库为例，实现 Maven 打包 - 构建镜像 - 推送镜像到仓库。\n\n1. 构建项目：需要在电脑上安装maven（3.5.3），在项目根目录执行\n```shell script\nmvn clean package\n```\n\n2. 构建gits-admin镜像\n```shell script\n# 登录腾讯云镜像仓库\ndocker login ccr.ccs.tencentyun.com -u yourusername -p yourpassword\n\ncd gits-admin\n\ndocker build -t ccr.ccs.tencentyun.com/dudiao/gits-admin:1.0.0 .\n\ndocker push ccr.ccs.tencentyun.com/dudiao/gits-admin:1.0.0\n```\n\n3. 构建gits-single镜像\n```shell script\n# 登录腾讯云镜像仓库\ndocker login ccr.ccs.tencentyun.com -u yourusername -p yourpassword\n\ncd gits-server/gits-single\n\ndocker build -t ccr.ccs.tencentyun.com/dudiao/gits-single:1.0.0 .\n\ndocker push ccr.ccs.tencentyun.com/dudiao/gits-single:1.0.0\n```\n\n## 关于\n\n可以关注我的微信公众号\n\n![读钓的YY](doc/images/weixin-mp.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdudiao%2Fgits","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdudiao%2Fgits","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdudiao%2Fgits/lists"}