gitlab宕機無法再次重啟解決辦法


問題: 在gitlab由於某些問題掛機,或無法再次啟動的情況下,如何將已有項目導出到新的gitlab服務器中

 

解決:gitlab有自己的備份命令和定時備份配置,但是如果既沒有定時備份,而備份命令在掛機的情況也無法執行,這是災難性的時刻,

有可能有的項目本地沒有了,大部分情況多人同時開發,合並代碼會是一個大問題,從git的原理出發,git會為每個項目在postgresql中生成一條記錄,然后根據這條記錄指向對應的文件夾,那么答案就找到了,

操作流程如下:

1.部署一個新的git服務器

2.在新的gitlab服務器上建相應的項目,注意項目的組和名字必須是一樣的,然后添加README,關於組是什么概念可以看圖片紅框,總之和老的gitlab服務名字必須一樣

3.關鍵的點來了,進入/var/opt/gitlab/git-data/repositories/ 這個路徑, 此時是不是很眼熟了,跟老的服務器上一模一樣,直接刪除掉/var/opt/gitlab/git-data/repositories 目錄下的所有文件,然后替換成老的服務器中該目錄下的所有文件

4.

sudo chown -R git:git /var/opt/gitlab/git-data/repositories/

這個命令比較關鍵,給文件賦予git訪問權限, 從gitlab頁面看,已經能看到這些項目了,已經成功一大半了

5.在新的gitlab上添加所有的開發人員,並給項目添加開發人員,如果是開發組就更快捷了,看個人喜好

6.從gitlab中拉取項目,此時應該會報ssh錯誤,你可以先用http方式拉取,至於怎么拉取就不做解釋了,到此一切OK


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM