繁体   English   中英

链接 git 中的两个存储库

[英]Linking two repositories in git

我们有一组 git 存储库,用于开发我们的产品。 这些存储库在 bitbucket 或 gitlab 中进行管理,并托管在本地或云端。 对这些 repo 所做的更改需要定期(比如每月一次)传播到 github 中托管的一组公共 repo。 这个要求是为了支持我们的 beta 计划,我们在公开之前测试更改(使其成为 GA)。 是否有任何标准模式可用于此目的?

将 Bitbucket 存储库克隆到本地计算机:

$ git clone --mirror ssh://git@bitbucket.org:your_name/your_repo.git

然后你基本上每个月都必须运行这两个命令:

$ git remote update --prune
$ git push --mirror git@github.com:your_name/your_repo.git

Linux 和 Cron

如果您有 Linux 机器/Linux 服务器/WSL,请编辑您的crontab

$ crontab -e

添加这个 crontab:

@monthly git -C <local_repo_path> remote update --prune && git -C <local_repo_path> push --mirror git@github.com:your_name/your_repo.git

macOS 和 Cron

使用 Cron 自动执行任务与在 Linux 中完成的方式非常相似,请按照本指南开始。

Windows 和计划任务

我对Schtasks不是很熟悉,但我是这样自动化任务的:

> schtasks /create /tn git-mirror /tr git -C <local_repo_path> remote update --prune && git -C <local_repo_path> push --mirror git@github.com:your_name/your_repo.git /sc weekly /d MON /ru "System"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM