作者changyuheng (张昱珩)
看板Soft_Job
标题Re: [讨论] 用Git有什麽缺点?
时间Sun Aug 23 14:06:46 2015
这串变成推荐 Git hosting service 了,分享一下心得。
因为陈大哥 @yongjhih 的涉猎广泛,
在公司用过这些选项
- Gitolite 3
- Gerrit 2 + Gitblit plug-in
- GitLab 7
- Phabricator
- GitHub
其中 Gerrit 的 Git 实作是 JGit,GitHub 不知道,其他都是原始版本的 Git。
Gitolite
Gitolite 藉由 SSH/Git 提供的 hook,精巧的提供了帐号与权限控管。
优点是轻巧,但是缺乏 web 前端与 social。
Gerrit
Gerrit 是 AOSP 和 Wikimedia 采用的 hosting service,
他提供了强大的 code review 功能,且支援 CI。
Wikimedia 在 Gerrit 上遇到的一些问题我们也有遇过,
例如 JGit 的 object 不见、packaging 过慢等等。
我认为这是使用 JGit 要承受的风险。
过去 Wikimedia 也使用 Gerrit,且会分享他们解决的问题,
所以若有什麽问题还稍微好处理。但目前 Wikimedia 已经转为使用 Phabricator。
优点是他提供的 code review 功能非常强大。
但使用门槛较高,push commit 的流程也稍微繁锁,
且需要另外学习 repo 这个 tool 的使用。
GitLab 与 GitHub
GitLab 和 GitHub 介面很像,也都强调 social。GitHub 连学校都在教就不赘述。
GitLab 除了显着的 social 元素,该有的 CI 整合与 REST API 也都不缺,
亦可藉由 merge request 的模式来达到 code review。
基本上 GitLab 可以被视为 self-hosting 版本的 GitHub。
Phabricator
Phabricator 是 Facebook 团队开发的。
特别指出开发者是因为,自身经验,Facebook 的产品就是潮。
Phabricator 基本上是一堆工具的集合,他虽然也提供了 repository hosting,
不过功能稍嫌阳春。
但是他强大的跨 repository issue tracking 功能,个人认为非常重要,
所以特别推荐。这一点连 Redmine 都还没有做到。
另外他可以直接 track 其他 repository hosting service,所以可以
Phabricator + GitHub + GitLab 这样子使用,一切就完美了。
--
http://changyuheng.github.io/
http://murmuring-on-the-air.github.io/
钱包、钥匙、手机、雨伞、帽子、保温杯。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.138.101.26
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1440310010.A.C01.html
2F:推 uid88: 正好在学这块,非常受用! 08/23 14:48
※ 编辑: changyuheng (223.138.101.26), 08/23/2015 15:05:34
3F:推 Twinkling: 跨repo issue tracking 有用的前提是你source code要 08/23 16:25
4F:→ Twinkling: 切得很乾净,这对ㄧ些成年旧专案是不可能的 08/23 16:25
5F:→ Twinkling: jgit的效能比git差,量大的时候会慢 08/23 16:26
6F:推 lym520: 有人用过 Gogs 吗? 这套是我觉得最好架问题最少的 该有的 08/23 18:26
7F:→ lym520: 功能也差不多都有了 08/23 18:26
8F:推 Baternest: Gerrit跟repo不需要绑在一起... 08/23 23:03
9F:→ changyuheng: Gogs 的 pull request 不知道做好没。Gerrit 跟 repo 08/23 23:46
10F:→ changyuheng: 不需要绑在一起没错,我们在不是 Gerri host 的多个 08/23 23:46
11F:→ changyuheng: repository 也用 repo 来做本地管理。不过 Gerrit c 08/23 23:46
12F:→ changyuheng: ode review 不透过 repo 实在不文明吧?那个 sshd 连 08/23 23:46
13F:→ changyuheng: port 都不一样 08/23 23:46