我的基本磁盘已满,我的gitlab安装,是否可以将存储库及其数据移动到其他文件夹,并确保即将推送的数据被发送到这些目录?
我试着停止gitlab并复制整个文件夹,但无济于事.PS - 我不是一个IT人员,我只是在投资,看看我们怎么能摆脱这个问题; 请回答时请详细说明.
Gus*_*s E 119
只是更新以防人们仍然参考这个.从GitLab 文档:
默认情况下,omnibus-gitlab存储Git存储库数据
/var/opt/gitlab/git-data.存储库存储在子文件夹中repositories.您可以git-data通过添加以下行来更改父目录的位置/etc/gitlab/gitlab.rb.Run Code Online (Sandbox Code Playgroud)git_data_dirs({"default" => "/mnt/nas/git-data"})从GitLab 8.10开始,您还可以通过添加以下行来添加多个git数据目录
/etc/gitlab/gitlab.rb.Run Code Online (Sandbox Code Playgroud)git_data_dirs({ "default" => "/var/opt/gitlab/git-data", "alternative" => "/mnt/nas/git-data" })请注意,目标目录及其任何子路径都不能是符号链接.
运行
sudo gitlab-ctl reconfigure以使更改生效.如果您已经拥有现有的Git存储库,则
/var/opt/gitlab/git-data可以将它们移动到新位置,如下所示:Run Code Online (Sandbox Code Playgroud)# Prevent users from writing to the repositories while you move them. sudo gitlab-ctl stop # Note there is _no_ slash behind 'repositories', but there _is_ a # slash behind 'git-data'. sudo rsync -av /var/opt/gitlab/git-data/repositories /mnt/nas/git-data/ # Fix permissions if necessary sudo gitlab-ctl reconfigure # Double-check directory layout in /mnt/nas/git-data. Expected output: # gitlab-satellites repositories sudo ls /mnt/nas/git-data/ # Done! Start GitLab and verify that you can browse through the repositories in # the web interface. sudo gitlab-ctl start
Kov*_*vah 10
对于版本> 7.14.1的新安装,更简单的解决方案:
打开gitlab.rb配置文件
sudo nano /etc/gitlab/gitlab.rb
Run Code Online (Sandbox Code Playgroud)
搜索git_data_dir,取消注释该行并在此处设置您的目录,例如
git_data_dir "/storage/data/gitlab/git-data"
Run Code Online (Sandbox Code Playgroud)
保存文件并重新配置Gitlab:
sudo gitlab-ctl reconfigure
Run Code Online (Sandbox Code Playgroud)
小智 6
您需要在下面附加这个小配置:
git_data_dirs({
"default" => {
"path" => "/srv/gitlab/git-data"
}
})
Run Code Online (Sandbox Code Playgroud)
和
rsync -av /var/opt/gitlab/git-data/* /srv/gitlab/git-data/.
chown -R git:git /srv/gitlab/git-data/
sudo gitlab-ctl reconfigure
Run Code Online (Sandbox Code Playgroud)
完毕。
我只是将我的gitlab存储库文件夹从一个目录移到了另一个目录,这可能对某人有用(在安静的时间快速执行此操作,或者事先停止gitlab!)
假设您已进行标准安装,则步骤为
cp -ar SOURCE DESTINATIONsudo /etc/init.d/gitlab restart