跳至主要内容
版本:1.26.4

從舊版 Gitea 升級

在升級之前,您需要做如下的準備工作。

為重大變更檢查更新日誌

為了讓 Gitea 變得更好,進行重大變更是不可避免的,尤其是一些里程碑更新的發佈。 在更新前,請 在 Gitea 部落格上閱讀更新日誌 並檢查重大變更是否會影響你的 Gitea 實例。

在控制面板中檢查過期的設定項

一些設定項可能會在後續版本中過期,你需要在控制面板中檢查他們。如果不解決過期的設定項, Gitea也許會在升級後無法重啟。你可以訪問 https://docs.gitea.com 獲得要升級的版本 對應的文件來修改你的設定文件。

降級前的備份

Gitea 會保留首二位版本號相同的版本的相容性 (a.b.x -> a.b.y), 這些版本擁有相同的資料庫結構,可以自由升級或降級。 其他情況 (a.b.? -> a.c.?)下, 新版 Gitea 可能將會將資料庫升級到與舊版資料庫不同的結構。

舉個例子:

當前目標結果
1.4.01.4.1
1.4.11.4.0⚠️ 不建議,後果自負!儘管資料庫結構可能不會變更,讓它可以正常工作。我們強烈建議降級前進行完全的備份。
1.4.x1.5.y✅ 資料庫會被自動升級。你可以直接從 1.4.x 升級到最新的 1.5.y。
1.5.y1.4.x❌ 資料庫已被升級且無法用於舊版本Gitea,使用備份來進行降級。

因為你不能基於升級後的資料庫運行舊版 Gitea,所以你應該在資料庫升級前完成資料備份。

如果你在生產環境下使用 Gitea,你應該在升級前做好備份,哪怕只是小版本的補丁更新。

備份步驟:

  • 停止 Gitea 實例
  • 備份資料庫
  • 備份 Gitea 設定文件
  • 備份 Gitea 在 APP_DATA_PATH 中的資料文件
  • 備份 Gitea 的外部儲存 (例如: S3/MinIO 或被使用的其他儲存)

如果你在使用雲服務或擁有快照功能的文件系統, 最好對 Gitea 的資料盤及相關資料儲存進行一次快照。

在所有上述步驟準備妥當之後,要升級 Gitea,只需要下載新版,停止運行舊版,進行資料備份,然後運行新版就好。 每次 Gitea 實例啟動時,它都會檢查是否要進行資料庫遷移。 如果需要進行資料庫遷移,Gitea 會花一些時間完成升級然後繼續服務。

從 Docker 升級

  • docker pull 拉取 Gitea 的最新發布版。
  • 停止運行中的實例,備份資料。
  • 使用 dockerdocker-compose 啟動較新的 Gitea Docker 容器.

從包升級

  • 停止運行中的實例,備份資料。
  • 使用你的套件管理器更新 Gitea 到最新版本。
  • 啟動 Gitea 實例。

從二進制升級

  • 下載最新的 Gitea 二進制文件到臨時文件夾中。
  • 停止運行中的實例,備份資料。
  • 將舊的 Gitea 二進制文件覆蓋成新的。
  • 啟動 Gitea 實例。

在 Linux 系統上自動執行以上步驟的腳本可在 Gitea 的 source tree 中找到 contrib/upgrade.sh 來獲取.

小心你的自訂模板

Gitea 的模板結構與變量可能會隨著各個版本的發佈發生變化,如果你使用了自訂模板, 你得注意你的模板與你使用的 Gitea 版本的相容性。

如果自訂模板與 Gitea 版本不相容,你可能會遇到: 50x 伺服器錯誤,頁面元素丟失或故障,莫名其妙的頁面佈局,等等… 移除或更新不相容的模板,Gitea Web 纔可以正常工作。