先介绍下 sourcegraph
Sourcegraph is a web-based code search and navigation tool for dev teams.
用于团队开发,基于网页的代码搜索,导航工具
Code search: fast, cross-repository, on any commit/branch (no indexing delay), with support for regexps, diffs, and filters
快速 跨仓库 任意提交/分支(没有索引延迟) 支持正则表达式,比较,过滤
Code navigation: go-to-definition and find-references for all major languages
所有主流语言支持:转到定义 查找引用
Deep integrations with GitHub, GitHub Enterprise, GitLab, Bitbucket Server, Phabricator, etc., plus a powerful extension API
深度集成巴拉巴拉
Open-source, self-hosted, and free (Enterprise upgrade available)
开源,可以自己搭建,免费,也可以升级企业版
最后一点就值得去装。
当然官网也是支持使用他们的服务,免费的。
自己搭建,需要服务器装有docker, 可用内存最低差不多1g,能跑起来的情况下。。。
docker run -d –publish 127.0.0.1:8880:7080 –publish 127.0.0.1:8443:7443 –publish 8633:2633 –name sg –restart unless-stopped –volume /root/sourcegraph/config:/etc/sourcegraph –volume /root/sourcegraph/data:/var/opt/sourcegraph sourcegraph/server:3.2.2
解释下上面的第一个 publish 参数:将主机的127.0.0.1:8880绑定到容器内的7080 http访问,因为再往上一层要用nginx代理访问容器,所以绑定到本地就行了
第二个 publish 参数:参考上一条。。https访问 这个端口其实用不到。。。
第三个 publish 参数:将主机的8633绑定到容器的2633 进管理控制台需要用到,而且还稍微有点麻烦。。。
两个目录,一个是配置,一个是数据
配置指容器内nginx等的配置
数据是裸代码仓库
截止2019-04-14时最新稳定版本是3.2.2
跑起来之后就是nginx配置代理了
location / { proxy_pass http://127.0.0.1:8880; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; }
自己再加上https证书就更完美了
然后我们就访问它,第一次访问好像是注册管理员
然后登录进去进行设置代码仓
{ "url": "https://github.com", "token": "token", "repos": [ "directus/directus", "WordPress/WordPress", "woocommerce/woocommerce" ] }
仓库直接在里面加就行,记得再回到列表页enable那个仓库
如果是自建的git服务,url可以使用 https://name:pwd@host/
禁止注册就需要进入管理控制台了,强制https。。。可以禁用https,我是直接用vpn组网,然后直接访问的内网,简单粗暴
{ // ..., "auth.providers": [{ "type": "builtin", "allowSignup": true }] }
禁用内置认证注册之后可以开启 github 认证等,也可以管理员直接在后台添加用户
嗯,界面语言,没折腾过,不清楚有没有中文界面,不过主要就是和代码打交道,界面啥语言也无所谓了
看代码神器,sourceinsight可以被换掉了。。。