3.7 KiB
		
	
	
	
	
	
			
		
		
	
	
			3.7 KiB
		
	
	
	
	
	
| date | title | slug | weight | toc | draft | menu | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2016-12-01T16:00:00+02:00 | 從 Gogs 升級 | upgrade-from-gogs | 10 | false | false | 
  | 
從 Gogs 升級
目錄
{{< toc >}}
若您正在執行 Gogs 0.9.146 以下版本,您可以很簡單地遷移到 Gitea。
請參考下列步驟。在 Linux 系統上請以 Gogs 的使用者身份執行:
- 使用 
gogs backup建立 Gogs 的備份。這會建立檔案gogs-backup-[timestamp].zip包含所有重要的 Gogs 資料。 如果稍後您要恢復到gogs時會用到它。 - 從下載頁下載對應您平臺的檔案。請下載 
1.0.x版,從gogs遷移到其它版本是不可行的。 - 將二進位檔放到適當的安裝位置。
 - 複製 
gogs/custom/conf/app.ini到gitea/custom/conf/app.ini。 - 從 
gogs/custom/複製自訂templates, public到gitea/custom/。 gogs/custom/conf中的其它自訂資料夾如:gitignore, label, license, locale, readme, 請複製到gitea/custom/options。- 複製 
gogs/data/到gitea/data/。它包含了問題附件和大頭貼。 - 以指令 
gitea web啟動 Gitea 驗證上列設定是否正確。 - 從網頁 UI 進入 Gitea 管理員面板, 執行 
Rewrite '.ssh/authorized_keys' file。 - 執行每個主要版本的二進位檔 ( 
1.1.4→1.2.3→1.3.4→1.4.2→ 等等 ) 以遷移資料庫。 - 如果變更了自訂檔、設定檔路徑,請執行 
Rewrite all update hook of repositories。 
修改指定的 gogs 資訊
- 
重新命名
gogs-repositories/為gitea-repositories/ - 
重新命名
gogs-data/為gitea-data/ - 
在
gitea/custom/conf/app.ini中修改:修改前:
[database] PATH = /home/:USER/gogs/data/:DATABASE.db [attachment] PATH = /home/:USER/gogs-data/attachments [picture] AVATAR_UPLOAD_PATH = /home/:USER/gogs-data/avatars [log] ROOT_PATH = /home/:USER/gogs/log修改後:
[database] PATH = /home/:USER/gitea/data/:DATABASE.db [attachment] PATH = /home/:USER/gitea-data/attachments [picture] AVATAR_UPLOAD_PATH = /home/:USER/gitea-data/avatars [log] ROOT_PATH = /home/:USER/gitea/log - 
執行
gitea web啟動 Gitea 檢查是否正確執行 
升級到最新版的 gitea
成功從 gogs 升級到 gitea 1.0.x 後再用 2 個步驟即可升級到最新版的 gitea。
請先升級到 gitea 1.6.4,先從下載頁下載
您平臺的二進位檔取代既有的。至少執行一次 Gitea 並確認一切符合預期。
接著重複上述步驟,但這次請使用[最新發行版本](https://dl.gitea.io/gitea/{{< version >}}/)。
從更新版本的 Gogs 升級
您也可以從更新版本的 Gogs 升級,但需要更多步驟。 請參考 #4286。
疑難排解
- 如果錯誤和 
gitea/custom/templates中 的自訂樣板有關,請試著逐一移除它們。 它們可能和 Gitea 或更新不相容。 
在 Unix 啟動時執行 Gitea
從 gitea/contrib 更新必要的檔案以取得正確的環境變數。
使用 systemd 的發行版:
- 複製新的腳本到 
/etc/systemd/system/gitea.service - 啟動系統時執行服務: 
sudo systemctl enable gitea - 停用舊的 gogs 腳本: 
sudo systemctl disable gogs 
使用 SysVinit 的發行版:
- 複製新的腳本到 
/etc/init.d/gitea - 啟動系統時執行服務: 
sudo rc-update add gitea - 停用舊的 gogs 腳本: 
sudo rc-update del gogs