一直都是使用 opengrok 來瀏覽代碼,但是最近遇到一個問題,opengrok 不會掃描 [libgeos/geos] 的代碼,嘗試過手動修改配置文件,重新創建 docker 容器,都沒有用,別的都好好的,就這個代碼目錄始終不能被導入進去。
看網上有推薦使用 sourcegraph 的,索性嘗試了一下,確實還聽不錯的。
1、安裝
我是使用 docker 進行安裝的,具體過程就不詳細說了,放出docker-compose.yml文件內容。
version: "3"
services:
opengrok:
container_name: sourcegraph
image: sourcegraph/server:3.36.3
ports:
- "7080:7080/tcp"
- "127.0.0.1:3370:3370/tcp"
environment:
DISABLE_OBSERVABILITY: 'true'
volumes:
- '~/sourcegraph/data/:/var/opt/sourcegraph/'
- '~/sourcegraph/config/:/etc/sourcegraph/'
上面映射的目錄,可以自己根據需要進行修改。
這個就是官網上的 docker 安裝命令改的。
docker run --publish 7080:7080 \
--publish 127.0.0.1:3370:3370 --rm \
--volume ~/.sourcegraph/config:/etc/sourcegraph \
--volume ~/.sourcegraph/data:/var/opt/sourcegraph \
sourcegraph/server:3.36.3
2、使用
創建容器跑起來之后,可以瀏覽器打開 http://127.0.0.1:7080/site-admin/configuration 頁面進行管理配置,默認會先讓創建一個帳號,創建就行。
進入管理界面后,點擊左側的 Repositories 下面的 Manage code hosts 來管理代碼倉庫。

點擊 add repositories 之后,就會在后台同步代碼倉庫了,這時候只需要等同步完成了,就可以查看代碼了。

這里我嘗試了幾個添加方式都不行,只有這個可以正常導入代碼倉庫。
查看代碼的效果還挺不錯,反應有挺快,代碼符號跳轉等都正常,還是挺不錯的。

在使用上還是聽不錯的,界面也美觀許多,就是不知道界面怎么設置為中文,英文的雖然也能用,但是還是沒有中文的舒服。
參考: sourcegraph 方便的代碼查看工具
Single-container Sourcegraph with Docker
Other Git repository hosts
