
API 文档: https://code.onedev.io/help/api
项目是完全开源的: https://github.com/theonedev/onedev
经常有人问我跟 GitLab 对比怎样:我想说的是 GitLab 需要养活几百人,做了很多对大多数开发团队并不常用的功能。而 OneDev 力求将一些最常用的功能做到最好,比如代码浏览时的符号导航,CI/CD 的图形化编辑(后台也是存为 yaml 文件),状态 /字段可定制的工单系统,看工单时,可以直接知道在那个版本被 Fix,以及看某个版本时,直接看到所有完成的工单等等。
项目是全 Java 的,也有同学说用的技术不够酷,不够云原生。其实用什么技术无所谓,关键是看产品本身是否好用。
1 GPLer 2021 年 5 月 26 日 via Android GitLab 太重量级了,需要一个小巧且好部署的类似服务,之前用 Gogs 和 Gitea 都还行 ,不知道 OneDev 对硬件配置要求怎么样。 |
2 Rheinmetal 2021 年 5 月 26 日 有无 OKR 类似的东西? |
3 moxuanyuan 2021 年 5 月 26 日 感觉 UI 设计得很好看,但习惯了 github 的版面风格,总得觉得有点不跟手 |
4 Rwing 2021 年 5 月 26 日 还不错,有竞争也是好事,这种东西最重要的是稳定性及后期服务,观察一段时间先 |
5 moxuanyuan 2021 年 5 月 26 日 @GPLer #1 Gogs 和 Gitea 那个好一点? |
6 ShinChven 2021 年 5 月 26 日 Gitlab 的 Issue 和 Wiki 功能对于国内的项目管理模式还是比较简陋。 |
7 dream10201 2021 年 5 月 26 日 看起来不错 |
8 defunct9 2021 年 5 月 26 日 有点 kanban 的意思 |
9 GPLer 2021 年 5 月 26 日 @moxuanyuan Gogs 已经不更新了,最新的版本 0.12.3 是 2020/10/08 发布的,而且 Gogs 移动端上显示异常,现在轻量级的 Git 服务直接用 Gitea 就行了,移动端还算能用。 |
10 forcecharlie 2021 年 5 月 26 日 有新的代码托管解决方案是好事,但用 Java 去实现这样一套系统,并不讨好,行业趋势都是用逐步用 Golang 实现一些功能和组件,架构上目前没有发现可以大规模横向扩展的方案,这个方向可以研究一下,还有各种权限增强,功能补全,如 Git LFS,等等等,要做好投入还挺大的。 |
11 julyclyde 2021 年 5 月 26 日 gitlab 最大的问题是 ruby |
12 ikas 2021 年 5 月 26 日 支持下,这个之前用过也自己编译过一个.很奇怪,现在反 java 是时尚么......... |
14 robinshen OP @ShinChven OneDev 的工单可定制性是一个特色。看板可以按照任意自己定制的字段来组织,比如按模块,工单状态或者分配的人等等,后续这块还会继续增强。 |
15 robinshen OP @forcecharlie 选择 Java 的一个主要原因是因为有太多成熟类库可以使用了,比如 OneDev 使用 Lucene 对 Git 仓库进行索引,使用 ANTLR 对各种语言进行语法分析。对于这种有着大量复杂逻辑而网络性能不是主要考量的系统,使用 golang 的优势并不明显。 目前并没有考虑大规模横向扩展,毕竟 OneDev 的定位不是做云服务。对于公司内部使用,一个不错的机器已经足够应付了。另外权限的管理也是 OneDev 比其他类似系统强的地方,比如说你可以定义工单的哪些字段哪些人可以操作,哪些类型的构建(持续构建版本,测试版本,上线或者发行版本等)哪些人可以操作和看到,哪些人可以操作代码哪些代码分支等等。 GitLFS 如果呼声比较高,在后续的版本会考虑加入。 |
16 LoNeFong 2021 年 5 月 26 日 做汉化么 |
18 NoahNye 2021 年 5 月 26 日 请问目前支持 gpg 签名么 |
19 robinshen OP |
20 asdasdasdzxc 2021 年 5 月 27 日 好奇心问一下你这前端在 Java 中我第一次见,用到什么技术,什么原理? |
21 robinshen OP @asdasdasdzxc http://wicket.apache.org. 是个服务端组件框架,类似于 JSF 。 |
22 asdasdasdzxc 2021 年 5 月 27 日 @robinshen 感觉很牛皮,但是好像很少人用,资料也不多,请问为什么选择这种技术栈呢? |
23 G2bN4dbX9J3ncp0r 2021 年 5 月 27 日 |
24 G2bN4dbX9J3ncp0r 2021 年 5 月 27 日 @GPLer > GitLab 太重量级了,需要一个小巧且好部署的类似服务,之前用 Gogs 和 Gitea 都还行 ,不知道 OneDev 对硬件配置要求怎么样。 gogs 这种就只有 git 存储,用 coding github 类的不香吗 |
25 robinshen OP @asdasdasdzxc 前后端语言一致,优秀的 IDE 支持,成熟稳定。把精力可以完全放在业务逻辑上,不用跟风纷繁复杂的 Javascript 世界。只要不是做那种世界级云服务,性能完全不是问题。 |
26 GPLer 2021 年 5 月 27 日 @lidashuang 自建其中原因就是为了加速 Github 上项目的访问,并且进行存档,防止因 DMCA 等原因项目被删除。 coding 之类的有一部分原因是信不过,而且自建已经能满足我的需要了。 |
27 patrickyoung 2021 年 5 月 28 日 via iPad 好看 看起来也实用. 但是我觉得大家推荐 go 的另一个原因是没有 jvm 庞大的开销, 我现在碰到 java 的项目都会尽可能找 go 的替代, 原因就是轻快. |
28 robinshen OP @patrickyoung 这要做什么,对于 git 及 CI 服务这种相对比较耗资源的系统,JVM 本身的开销其实不算什么了。一个 2G 内存的 Linux 就足够应付个人项目了。而且对于比较复杂的系统,go 的成熟类库也比较少,语法也相对不够强大。使用什么工具还是要看具体场景,不能一概而论。 |
29 G2bN4dbX9J3ncp0r 2021 年 5 月 28 日 @GPLer 自建 gitlab 不香吗 |
30 patrickyoung 2021 年 6 月 13 日 @robinshen 主要是 CI 服务和看板加成,如果只是 git 托管和常规的 PR/Issue,这个多出来的占用可以干不少事情。  |
31 anxn 2021 年 6 月 15 日 via Android 很强,关注了 |