push mirroring

简介:

  • 推送镜像是一个下游存储库,用于镜像对上游存储库所做的提交。
  • 推送镜像被动接收对上游存储库所做的提交的副本。
  • 为防止镜像与上游存储库分流,请勿将提交直接推送到下游镜像。改为将提交推送到上游存储库。

配置推送镜像

基于https的方式

step1: 选择被推送的仓库所在的项目

如果需要通过某个用户来完成镜像推送,需要在协议后加上被推送仓库的username@,如https://renliting@docker.bdeet.top/test/aaa.git,对应的密码就是renliting用户的密码。改用户的权限至少是maintainer权限。

step2: 选择需要推送的仓库所在的项目:

Main menu → ProjectsSettings > RepositoryMirroring repositories → input Git repository URL-Mirror direction(Push)-Authentication method(Password)-Mirror repository

然后点击同步即可。

基于ssh方式

step1: 选择被推送的仓库所在的项目

ssh的方式是将被推送的仓库的clone地址复制过来,然后需要url地址中的:改为/。如将git@docker.bdeet.top:mirror/ccc.git改为git@docker.bdeet.top/mirror/ccc.git

step2: 选择需要推送的仓库所在的项目

Main menu → ProjectsSettings > RepositoryMirroring repositories → input Git repository URL-Mirror direction(Push)-Authentication method(SSH)-Mirror repository

step3: 在上一步的基础上查看ssh公钥并拷贝(一定要拷贝配置好后的镜像推送下的ssh公钥,位于同步按钮的旁边)

step4: 选择被推送的仓库所在的项目

Main menu → ProjectsSettings > RepositoryMirroring repositoriesDeploy keys

然后创建已启用的部署密钥,填写标题,将上面的ssh公钥粘贴进去。

step5: 选择需要推送的仓库所在的项目

点击同步

step6: 查看

可以发现,推送后两边的提交次数一致,说明推送成功。