0


Gitlab 数据备份

1、Gitlab 创建备份
1.1、手动备份
创建备份文件
使用一条命令即可创建完整的Gitlab备份。
gitlab-rake gitlab:backup:create
使用命令会在/var/opt/gitlab/backups目录下创建一个压缩包,这个压缩包就是Gitlab整个的完整部分。
[root@server ~]# gitlab-rake gitlab:backup:create
在这里插入图片描述
生成完后,/var/opt/gitlab/backups目录下创建一个名称类似为*.tar的包
在这里插入图片描述

*扩展知识
/etc/gitlab/gitlab.rb 配置文件须备份
/var/opt/gitlab/nginx/conf nginx配置文件
/etc/postfix/main.cfpostfix 邮件配置备份

2、更改Gitlab备份目录
也可以通过/etc/gitlab/gitlab.rb配置文件来修改默认存放备份文件的目录
修改为你想存放备份的目录即可

gitlab_rails[‘backup_path’] = “/home/gitlab-backup”

#指定备份后数据存放的路径、权限、时间配置
gitlab_rails[‘manage_backup_path’] = true 开启备份功能
gitlab_rails[‘backup_path’] = “/home/gitlab-backup” 指定备份的路径
gitlab_rails[‘backup_archive_permissions’] = 0644 备份文件的权限
gitlab_rails[‘backup_keep_time’] = 7776000 备份保留时间
在这里插入图片描述
修改完后重新加载配置文件.

gitlab-ctl reconfigure
在这里插入图片描述
创建备份目录并授权

chown -R git:git gitlab-backup
在这里插入图片描述
使用命令创建完整的Gitlab备份
gitlab-rake gitlab:backup:create
在这里插入图片描述
这个压缩包就是gitlab 的整个完整部分
在这里插入图片描述
3、Gitlab自动备份
实现每天凌晨2点进行一次自动备份:通过crontab使用备份命令实现,需重启cron服务
方法一、输入: crontab -e 然后添加相应的任务
#输入命令crontab -e
crontab -e
#输入相应的任务

02 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1

注意:环境变量CRON=1的作用是如果没有任何错误发生时, 抑制备份脚本的所有进度输出

#查看周期性计划任务
crontab -l
在这里插入图片描述
修改时间进行验证
date -s 01:59:30

在这里插入图片描述

2、脚本执行gitlab 备份
[root@server home]# cat gitlan.sh

#!/bin/basha="/home/gitlab-backup"back="/home/git_back"date="$(date +%Y-%m-%d)"logfile=$back/$date.log
gitlab-rake gitlab:backup:create > /dev/null
b=`ls $a |wc -l`if[$b -eq 0];thenecho"$date.tar 备份失败">>$logfileelif[$b -gt 0];thenecho" $date.tar 备份成功">>$logfilefimv$a/*   $back/$date.tar

执行脚本后,会在/home/git_back下生成日志文件及备份的项目包
在这里插入图片描述

将脚本加入周期性计划执行

crontab -e  
02 * * *   /home/gitlab.sh

测试
在这里插入图片描述

**

##################################################################################
*Git知识扩展
git status     #上次提交后是否对文件再做了修改项目
git add .         #添加所有的变动
git checkout -b 文件夹名称         #创建本地分支并切换分支 git checkout -b pr/ffr
git commit -m “描述”             #提交修改 git commit -m “修改什么”
git merge origin/develop “本地分支”         #合并origin/develop上别人所做的修改到自己的本地分支 git merge origin/develop pr/ffr
git push origin “本地分支” #推送本地分支到远程,并建立联系 git push origin pr/ffr
git rebase -i 编号 #合并多次提交,将前几次的提交合并为一次
git checkout 分支名 #切换分支 git checkout pr/FFR-color git cherckout develop
git pull #更新当前分支的状态
git branch #列出本地分支
git branch -a #列出本地分支与远程分支
git branch -D 分支名 #删除分支(目前仅用于删除本地分支)
git remote -v #可以查看远程仓库信息
git branch 分支名 #仅仅创建 一个新分支,并不会自动切换到新分支中去
git rebase --abort #退出git rebase
git reset 提交编号 #git rebase -i 提交编号,之后出现错误,可以回退到之前未合并时的日志状态
git commit --amend -m “描述” #修改上一次的提交的描述
git stash #暂存上一次的修改,准备切换到其他的分支
git stash pop #还原上一次的修改,将暂存的修改加入到新的分支
##################################################################################

**

标签: gitlab git github

本文转载自: https://blog.csdn.net/Marcelo59/article/details/129414334
版权归原作者 知世玖是力量 所有, 如有侵权,请联系我们删除。

“Gitlab 数据备份”的评论:

还没有评论