簡體   English   中英

GitLab 備份不包括 wiki

[英]GitLab backup doesn't include wiki

我們的服務器上安裝了 GitLab CE 9.1.2,備份計划在周一至周五晚上 8:00 運行。 到目前為止一切都很好,但昨天我們開始使用 Wiki。 我仔細檢查了備份文件,不知何故它的大小與前一天的備份完全相同(除了創建 Wiki 頁面之外,系統中沒有做任何事情)。

因此,我懷疑 Wiki 未包含在備份過程中,因此我打開了一個 VM 並嘗試恢復備份文件。 操作成功后,我轉到項目的Wiki部分,它是空的。

我正在閱讀一些資源,他們說要包含 Wiki 的 repo 不應該為空,但我們的 repo 充滿了代碼、提交、分支、問題等。我遵循了Omnibus安裝的備份說明,因為這就是我們有。

0 20 * * 1-5 /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1

如您所見,我沒有包含任何SKIP環境變量,因此它不應跳過任何內容。 我錯過了什么嗎? 我正確地遵循了說明。 我需要系統的完整備份。

鏈接@fedorqui 看來,這是一個問題,當您創建 Wiki 時,緩存沒有被刷新,因此備份過程將 Wiki 視為空,因此被跳過。

為了解決這個問題,我們似乎必須自己手動刷新緩存。

sudo gitlab-rails console
p = Project.find_by_full_path 'namespace_path/project_path'
wiki = ProjectWiki.new p
wiki.repository.empty?
wiki.repository.expire_all_method_caches
wiki.repository.empty?

你是第一次運行wiki.repository.empty? 它將返回true ,這就是備份過程跳過 Wiki 的原因。 運行wiki.repository.expire_all_method_caches你應該很高興(我試過這個,我們的 Wiki 現在正在備份)。 如果您想確認一切正常,只需運行wiki.repository.empty? 再次,這次它應該返回false

截至 2017 年 6 月 5 日,該錯誤似乎尚未修復。


更新(2017 年 8 月 22 日)

GitLab CE 9.5.0 已經發布(更新日志),其中修復了這個問題。 如果您不想手動使緩存過期,我建議您將 GitLab 安裝升級到至少 v9.5.0,您應該沒問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM