版本控制的藝術 : 自建 Git Server - Gogs Web

更新 發佈閱讀 5 分鐘
不敗的系列文圖片

不敗的系列文圖片

-《版本控制的藝術 : Git 基礎篇》

-《版本控制的藝術 : Git 實務篇

在前兩篇文章中,簡單介紹了 Git 的基本應用與團隊協作技巧。這一篇要大家從零開始自建一個 Git Server。

你可能會想:「不是有 GitHub 或 GitLab 嗎?為什麼還要自己架設 Git Server?」有這樣的疑問很正常。不過,在沒有外網連線的環境下,像是內網的專案、敏感的資訊單位甚至是碩士班的研究室,自己建一個 Git Server 就會非常實用,確保資訊安全的同時,也能順利執行git pull git push 的日常操作,只要確認彼此間的防火牆有開放就能夠運作。

這次以 Gogs Web 作為 Git Server 的方案來做說明,其他還有類似的 Gitea 有興趣的讀者可以去看看。那就讓我們開始吧!


在開始流程之前有兩件事情要先做:

  1. 安裝 Git
  2. 安裝 Gogs Web

Git 安裝就不贅述了。另外 Gogs Web 安裝進入頁面之後選擇適合你的作業軟體版本,這邊以 Windows 版本來做介紹:

安裝 Gogs Web 壓縮檔

安裝 Gogs Web 壓縮檔

安裝完後解壓縮,可以放置到你想存放的任何地方,這邊放到 C 槽下比較好介紹:

gogs 路徑

gogs 路徑

接下來在該資料夾開啟 Git Bash cmd,輸入指令 ./gogs.exe web ,會看到一個警告訊息先不用理它, app.ini檔是參數設定的地方,之後整個流程跑完才會出現:

啟動 gogs web

啟動 gogs web

前往網頁 localhost:3000,會自動導向首次安裝頁面:

*如果有任何操作選錯了想要重來,把資料夾砍掉重新解壓縮就好

gogs 首次安裝

gogs 首次安裝

這邊軟體新手非常建議選擇 SQLite 作為資料庫,它只會是一個 .db 檔,不需要去連接 SQL Server:

選擇 SQLite 3,路徑默認即可

選擇 SQLite 3,路徑默認即可

其他資料基本上都是默認選項,然後下一步,註冊新的帳號:

帳號註冊

帳號註冊

註冊完之後登入就完成了!

就這樣而已?沒錯!

就這樣而已?沒錯!

測試建立 repository 來推上我們的專案,點選右上 + 來建立,完成之後如下圖:

建立 repository

建立 repository

這裡顯示的 HTTP 位址,就是我們的遠端儲存庫路徑囉!請特別注意,如果是內網中的其他夥伴要連線使用,記得把 localhost 改成實際的 IP 位址,這樣才能正確存取。

至於功能方面,Gogs 提供的操作介面和大家熟悉的 GitHub、GitLab 大致相同,該有的功能幾乎都有,大概有 87% 像,放心使用就對了!

再來我們把自己本地的專案推送上去測試:

git push 你的遠端倉庫網址 master

會出現彈窗讓你輸入帳號密碼:

身分驗證

身分驗證

輸入完之後可以發現你下的指令已經成功了!接下來到頁面上刷新:

成功推送專案

成功推送專案

怎麼樣,是不是流程超簡單?以上就是自建 Git Server 的完整步驟,基本上花不到十分鐘就能搞定!

無論是公司內部的團隊合作,還是你現在還是學生、想要自己架設練習環境,都非常適合。不僅能提升對 Git 背後運作方式的理解,也多了一點動手實作的樂趣 — 這不就是我們軟體工程師最享受的事嗎?


再來聊個題外話。有些人可能會覺得中文介面看起來有點「刺眼」,畢竟都是軟體工程師,看中文也太 Low (XD)。

在一開始的地方有提到,建立完流程後會出現 app.ini 的參數設定檔,該檔的位置在 \gogs\custom\conf\app.ini ,進入之後會看到一堆參數,我們在空白處新增:

[i18n]
LANGS = en-US
NAMES = English

接著,把 Gogs Web 服務中止(注意:不是關掉瀏覽器頁面喔!而是停止 Git Bash 或命令列裡正在執行的 Gogs 程式),然後重新啟動 Gogs。

重新啟動後就能看到英文介面了:

英文介面

英文介面

希望大家喜歡這一系列的 Git 教學,如果對你有一點點幫助,那就很值得了。未來我也會持續補充更多進階技巧與實務應用,讓這個系列更完整。

Git 的世界其實比我們想像的還要深,一步步探索下去,會發現不只是版本控制,更是一種開發思維的養成。

留言
avatar-img
留言分享你的想法!
avatar-img
Alan的沙龍
0會員
12內容數
不定期技術文章、旅遊、人生見解分享
Alan的沙龍的其他內容
2025/08/16
上一篇《版本控制的藝術:Git 基礎篇》介紹了 Git 的安裝與推送到遠端倉庫的基本操作。雖然這一篇名為「實務篇」,但其實並沒有太複雜的概念,主要是根據我的實務經驗,分享開發者 A 與我本人的協作過程,以及一些需要注意的事項。熟練這些操作後,基本上就能成為一名在 Git 方面合格的工程師了。
Thumbnail
2025/08/16
上一篇《版本控制的藝術:Git 基礎篇》介紹了 Git 的安裝與推送到遠端倉庫的基本操作。雖然這一篇名為「實務篇」,但其實並沒有太複雜的概念,主要是根據我的實務經驗,分享開發者 A 與我本人的協作過程,以及一些需要注意的事項。熟練這些操作後,基本上就能成為一名在 Git 方面合格的工程師了。
Thumbnail
2025/08/16
本篇文章介紹 Git 的基礎概念,從專案建立開始,一步步從建立專案並推送到遠端倉庫。掌握 Git 的基礎操作算是軟體工程師必備的能力。後續我們將在下篇文章中,進一步介紹 Git 的分支管理、協作流程及其他進階應用。​
Thumbnail
2025/08/16
本篇文章介紹 Git 的基礎概念,從專案建立開始,一步步從建立專案並推送到遠端倉庫。掌握 Git 的基礎操作算是軟體工程師必備的能力。後續我們將在下篇文章中,進一步介紹 Git 的分支管理、協作流程及其他進階應用。​
Thumbnail
2025/08/09
本篇實現幾種常見的使用模式: 1. Simple 2. Work Queue 3. Publ/Sub 4. Routing 5. Topic
Thumbnail
2025/08/09
本篇實現幾種常見的使用模式: 1. Simple 2. Work Queue 3. Publ/Sub 4. Routing 5. Topic
Thumbnail
看更多
你可能也想看
Thumbnail
蝦皮分潤計畫讓我在分享旅遊文章時,也能透過推薦好物累積被動收入,貼補旅行基金。這篇文章,除了介紹計畫的操作亮點與心得,也分享我最常應用的案例:「旅行必備小物 TOP5」,包含行李鎖、免洗內衣褲、分裝瓶、折疊衣架與真空壓縮袋,幫助出國打包更輕鬆。想同時記錄旅行、分享好物又創造額外收入的你,千萬別錯過!
Thumbnail
蝦皮分潤計畫讓我在分享旅遊文章時,也能透過推薦好物累積被動收入,貼補旅行基金。這篇文章,除了介紹計畫的操作亮點與心得,也分享我最常應用的案例:「旅行必備小物 TOP5」,包含行李鎖、免洗內衣褲、分裝瓶、折疊衣架與真空壓縮袋,幫助出國打包更輕鬆。想同時記錄旅行、分享好物又創造額外收入的你,千萬別錯過!
Thumbnail
想增加被動收入?加入蝦皮分潤計畫是輕鬆上手的好方法!本文提供完整教學,包含申請流程、賺取分潤技巧,以及實際使用心得分享,助你輕鬆獲得額外收入。
Thumbnail
想增加被動收入?加入蝦皮分潤計畫是輕鬆上手的好方法!本文提供完整教學,包含申請流程、賺取分潤技巧,以及實際使用心得分享,助你輕鬆獲得額外收入。
Thumbnail
這篇文章將介紹工程師使用版控和git的相關知識和技能,包括版本控制的意義和git的基本指令,以及開發流程和webhook的概念。
Thumbnail
這篇文章將介紹工程師使用版控和git的相關知識和技能,包括版本控制的意義和git的基本指令,以及開發流程和webhook的概念。
Thumbnail
本篇文章介紹如何使用Git Bash進行版本控制操作,包括創建repository、查看狀態、歷程以及加入暫存和提交暫存等操作。透過基本的Git指令,您可以更深入地瞭解Git工具的使用方法。
Thumbnail
本篇文章介紹如何使用Git Bash進行版本控制操作,包括創建repository、查看狀態、歷程以及加入暫存和提交暫存等操作。透過基本的Git指令,您可以更深入地瞭解Git工具的使用方法。
Thumbnail
GitLab為程式碼管理倉庫,且從8.0開始提供CI/CD。 安裝 更新套件索引 sudo apt update 安裝postfix sudo apt install ca-certifi​cates curl openssh-server postfix 切換目錄 cd /t
Thumbnail
GitLab為程式碼管理倉庫,且從8.0開始提供CI/CD。 安裝 更新套件索引 sudo apt update 安裝postfix sudo apt install ca-certifi​cates curl openssh-server postfix 切換目錄 cd /t
Thumbnail
本文將介紹Gitlab與GitHub的差異,以及在本地環境部署Gitlab的流程與實作。文章內容包括版本管理系統的選擇,Gitlab的基本功能,以及使用Docker進行部署的詳細步驟。
Thumbnail
本文將介紹Gitlab與GitHub的差異,以及在本地環境部署Gitlab的流程與實作。文章內容包括版本管理系統的選擇,Gitlab的基本功能,以及使用Docker進行部署的詳細步驟。
Thumbnail
在 Ubuntu 22.04 上使用 GitLab,請依照下列步驟操作。首先,使用nano文字編輯器開啟「gitlab.rb」檔案並尋找存取GitLab的URL: sudo nano /etc/gitlab/gitlab.rb 到下面的連結以使用 Ubuntu 22.04 上的 GitL
Thumbnail
在 Ubuntu 22.04 上使用 GitLab,請依照下列步驟操作。首先,使用nano文字編輯器開啟「gitlab.rb」檔案並尋找存取GitLab的URL: sudo nano /etc/gitlab/gitlab.rb 到下面的連結以使用 Ubuntu 22.04 上的 GitL
Thumbnail
GitLab 是一個 DevOps、基於 Web 的免費開源平台 Git 儲存庫,為開發人員提供了所有必要的功能。它是一個用於開發 DevOps 應用程式的一體式平台。 GitLab 允許您執行原始碼管理、監控、安全性和專案規劃任務。 Update system packages: sudo
Thumbnail
GitLab 是一個 DevOps、基於 Web 的免費開源平台 Git 儲存庫,為開發人員提供了所有必要的功能。它是一個用於開發 DevOps 應用程式的一體式平台。 GitLab 允許您執行原始碼管理、監控、安全性和專案規劃任務。 Update system packages: sudo
Thumbnail
前言 上次我們講到 CI/CD 中的 when 使用,今天我們要來傳授一套必殺技,我們要把過去所學的全部融合再一起,相信各位都準備好了,將 Gitlab 從枷鎖中解放出來吧,讓我們來詠唱「武裝完全支配術」 「System Call. Connect Armament. Search Archiv
Thumbnail
前言 上次我們講到 CI/CD 中的 when 使用,今天我們要來傳授一套必殺技,我們要把過去所學的全部融合再一起,相信各位都準備好了,將 Gitlab 從枷鎖中解放出來吧,讓我們來詠唱「武裝完全支配術」 「System Call. Connect Armament. Search Archiv
Thumbnail
前言 今天我們要做一個初體驗,讓各位感受一下,在 GitLab CD/CD 的過程,我們今天使用官方提供的 Gitlab,如果您有自架 Gitlab ,也可以使用自架的 Gitlab 練習,我們這邊為了讓各位學習方便,所以使用官方提供的 Gitlab 作為練習,實際寫一個簡單的 CI/CD 腳本,
Thumbnail
前言 今天我們要做一個初體驗,讓各位感受一下,在 GitLab CD/CD 的過程,我們今天使用官方提供的 Gitlab,如果您有自架 Gitlab ,也可以使用自架的 Gitlab 練習,我們這邊為了讓各位學習方便,所以使用官方提供的 Gitlab 作為練習,實際寫一個簡單的 CI/CD 腳本,
Thumbnail
此篇教學 : 使用Hexo 在 GitHub Pages 架好部落格網站上套版,輕鬆套用自己喜歡的Blog模板。
Thumbnail
此篇教學 : 使用Hexo 在 GitHub Pages 架好部落格網站上套版,輕鬆套用自己喜歡的Blog模板。
Thumbnail
此篇教學 : 使用GitHub架設免費的部落格網站,輕鬆擁有自己的Blog雛型,記錄生活點滴。
Thumbnail
此篇教學 : 使用GitHub架設免費的部落格網站,輕鬆擁有自己的Blog雛型,記錄生活點滴。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News