如何使一个 Gitlab 存储库与另一个存储库保持同步 [镜像][gitlab-gitlab]

发布于 2025-01-13 09:40:06 字数 70 浏览 0 评论 0原文

如何将一个 gitlab 存储库与另一个存储库进行镜像。

我有一个存储库,它应该与另一个存储库的受保护分支同步。

How do I mirror one gitlab repository with the another.

I have a repository which should be in sync with the protected branches of another repository.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

奈何桥上唱咆哮 2025-01-20 09:40:06

我通过编写 解决了这个问题Gitlab 服务器挂钩 如下 所有存储库(查看发布的官方指南链接):

#!/bin/sh

# https://docs.gitlab.com/ee/administration/server_hooks.html#create-a-server-hook-for-a-repository

# Encode path slashes with dots.

FIXED_PROJECT_PATH=$(echo ${GL_PROJECT_PATH} | sed -r 's:/:\.:g')

# Mirror the repository, even if does not yet exist.

PROJECT_URI=<<GITLAB_MIRROR_URL>>/${FIXED_PROJECT_PATH}.git

git push --mirror ${PROJECT_URI}
exit 0 # Force successfully execution

NB: 记得替换<> 与您自己的。

I solved this by writing a Gitlab server hook like the following for ALL REPOSITORIES (look at the posted official guide link):

#!/bin/sh

# https://docs.gitlab.com/ee/administration/server_hooks.html#create-a-server-hook-for-a-repository

# Encode path slashes with dots.

FIXED_PROJECT_PATH=$(echo ${GL_PROJECT_PATH} | sed -r 's:/:\.:g')

# Mirror the repository, even if does not yet exist.

PROJECT_URI=<<GITLAB_MIRROR_URL>>/${FIXED_PROJECT_PATH}.git

git push --mirror ${PROJECT_URI}
exit 0 # Force successfully execution

NB: remember to subsitute <<GITLAB_MIRROR_URL>> with your own.

给妤﹃绝世温柔 2025-01-20 09:40:06

您可以使用 GitLab 镜像 功能来实现这一点,它是内置的 -在平台中。

You can use GitLab mirroring capability to achieve that, it's built-in the platform.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文