当前位置:网站首页 > 数据科学与大数据 > 正文

gitea迁移(gitea迁移数据)



gitlab 转到 gitea gitlab代码迁移_git

GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代码免费托管到 GitLab.com,而且不限项目数量和成员数。最吸引人的一点是,可以在自己的服务器上搭建 GitLab CE (社区免费版)版本,方便内部团队协作开发和代码管理。

gitlab 官网:https://about.gitlab.com

gitlab CE下载站点:https://packages.gitlab.com/gitlab/gitlab-ce?page=60

gitlab 清华镜像站点:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/

浙大开源镜像站:http://mirrors.lifetoy.org/gitlab-ce/yum/el7/

下面介绍如何在 CentOS 服务器上搭建 GitLab CE 版本,以及一些基本的配置。

1. 安装:

GitLab 提供了两种安装方式:源码手动编译安装和软件包管理安装。

源码手动编译安装虽然配置灵活,但过程比较麻烦,不容易安装成功,所以我这里选择软件包管理安装的形式。

1.1 使用 GitLab 提供仓库在线安装:

国外的 GitLab 仓库访问速度较慢,可以使用国内的站点:

GitLab 官方:https://packages.gitlab.com/gitlab/gitlab-ce?filter=rpms

清华大学 TUNA 开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

浙大开源镜像站:http://mirrors.lifetoy.org/gitlab-ce/yum/el7/

下载好 rpm 软件安装包后上传到服务器指定的目录下,通过以下命令进行安装:

记录一下 rpm 卸载软件安装包命令:

2. 启动 GitLab:

安装完成之后,打开配置文件 /etc/gitlab/gitlab.rb 将 external_url = 'http://git.example.com' 修改为自己的 IP 地址:external_url 'http://ip_address' ,然后执行下面的命令,对 GitLab 进行编译:

完成后,使用浏览器访问:http://ip_address 可进入 GitLab 登录页面,首次访问系统会让你重新设置管理员的密码,默认的管理员账号是 root,如果你想更改默认管理员账号,登录系统后可以修改帐号名。

3. GitLab 基本配置:

GitLab 的相关参数配置都存在 /etc/gitlab/gitlab.rb 文件里。自 GitLab 7.6 开始的新安装包, 已经默认将所有的参数写入到 /etc/gitlab/gitlab.rb 配置文件中。

重新编译配置:

注意: 和 password 更新为自己邮箱地址和密码;邮箱需要开启 SMTP 协议。

重新编译配置即可生效:

其它邮箱的配置可参考:https://doc.gitlab.cc/omnibus/settings/smtp.html。

再分别执行以下命令即可:

也可以关闭 Gravatar 头像显示配置,登录 GitLab 管理员账户,进入设置界面(路径地址:http://ip:port/admin/application_settings ),取消以下选项即可。

4. 代码迁移:

4.1我们可以使用gitlab自带的backup命令进行备份。在gitlab的help文档里面有相关的说明,URL地址是: http://your-gitlab-server/help/raketasks/backup_restore.md

利用gitlab的backup机制会生成一个名为[TIMESTAMP]_gitlab_backup.tar的tar文件,这个tar文件会包含所有的数据库数据、所有的repo数据,以及所有的附件。TIMESTAMP是以秒为单位的时间戳,用来区分不同的备份文件,如:_gitlab_backup.tar。需要注意的是,利用backup机制进行备份的话,对gitlab的版本是要求严格一致的。例如用8.6版的gitlab生成的备份文件,拿到8.7版的gitlab上进行恢复,是会报错的。

backup的操作命令:

也可以使用SKIP变量来选择要备份的内容,SKIP变量的选项有:db, uploads (attachments), repositories, builds(CI build output logs), artifacts (CI build artifacts), lfs (LFS objects)。多个项之间用逗号隔开:

backup命令执行之后,终端上会出现导出数据库及repo数据等的的操作日志。

4.2 backup的相关配置

backup文件的保存位置在/etc/gitlab/gitlab.rb中配置。打开这个配置文件,可以看到backup的一段配置:

可以根据需要修改“”backup_path“” 的路径

默认情况下,备份文件是放在/var/opt/gitlab/backups目录下的,另外archive_permissions属性用来指定生成tar文件的权限属性,默认为0600。还可以通过upload设置,将备份上传到远程服务器,详细配置这里不做介绍。

4.3 利用backup文件恢复:

再次强调一下gitlab对版本是要求严格一致的。例如用8.6版的gitlab生成的备份文件,拿到8.7版的gitlab上进行恢复,是会报错的。

首先我们需要确保backup的tar文件在配置文件中指定的/var/opt/gitlab/backups目录下面。

然后,就可以通过命令来执行恢复操作了:

sudo gitlab-rake gitlab:backup:restore

需要注意的是:backup生成的tar文件的备份是不会对gitlab的配置文件进行备份的,gitlab.rb, gitlab.yml, /etc/gitlab/gitlab-secrets.json(存放着数据库中为two-factor authentication加密信息的key)等这些配置文件需要另行备份。

如果想指定备份文件的保存时间的话,可以在/etc/gitlab/gitlab.rb中进行配置:

4.5 备份恢复之后如果原来密码进不去的话,可以通过以下方法修改root密码:

or

Now you can change your password:

4.6 解决自定义头像无法显示问题:

解决指向localhost的问题:

编辑gitlab的配置vi /etc/gitlab/gitlab.rb,修改external_url 参数值

头像显示问题:

记一次代码迁移过程中遇到的问题1:

情况是迁移代码到新服务器完成之后,所有代码都正常,但是添加SSH公钥的时候,直接返回500报错,查看日志没看到任何异常,后来突然想到会不会是openssh-clients没装

果然安装完openssh-clients之后就立马好了,

问题2:

代码迁移到内网之后,开发人员可能会需要从外网来git clone代码 但是此时ssh的方法肯定是用不了的,ssh连不到内网的gitlab服务器

解决办法就是:

1、使用http协议来克隆,但是http克隆的时候会要求输入账号密码,不是很方便,我们可以在克隆的时候直接指定账号密码

2、还是使用SSH,但是需要在公司路由器上映射ssh端口,比如你映射的是公网9922端口到内网gitlab服务器22端口,那就可以这样来克隆

问题3:

linux yum 安装的git版本太低导致在克隆的时候 报错:

解决办法:

指定用户 :git clone http://username:password@IP/.https://blog.51cto.com/xxx.git

或者 升级git 版本≥1.7.10

参考链接 https://stackoverflow.com/questions//cant-clone-a-github-repo-on-linux-via-https

到此这篇gitea迁移(gitea迁移数据)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 中文期刊全文数据库cnki(中文期刊全文数据库网络版的基本使用方法是)2025-09-18 13:00:10
  • 自动驾驶数据标注员(自动驾驶数据标注员一个框多少钱)2025-09-18 13:00:10
  • 全文数据库有哪些特点(全文数据库有哪些特点呢)2025-09-18 13:00:10
  • 数据中台建设方案怎么写好(数据中台建设方案怎么写好一点)2025-09-18 13:00:10
  • 数据增删改操作(实验训练3 数据增删改操作)2025-09-18 13:00:10
  • redis软件怎么连接redis(redis-cli连接redis数据库)2025-09-18 13:00:10
  • Oracle数据库增删改查(oracle数据库增删改查基本语句举例)2025-09-18 13:00:10
  • max30205数据手册(max232数据手册)2025-09-18 13:00:10
  • Apollo配置中心修改数据库配置生效(apollo修改了配置要重启吗)2025-09-18 13:00:10
  • oracle查看锁表用户ip(如何查看oracle数据库锁表)2025-09-18 13:00:10
  • 全屏图片