Github Actions 自动同步到 Gitee

news2025/7/11 4:05:30

目录

        • 引言
        • 具体方案

引言

  • 平时开源代码一般已Github为主,但是会遇到网不好的情况,于是考虑将Github仓库自动同步到Gitee上,作为备份。
  • 考虑不能手动做这个事情,于是想到了Github Actions 自动化同步到Gitee中

具体方案

假设Github已经有了仓库,这里以RapidAI/YOLO2COCO仓库为例。
!!!注意:下图图文并不完全对应,以文字为主

  1. 在Github仓库下开通Actions的功能,点击Actions选项卡→ 点击右下角Create a new workflow,命名为SyncToGitee.yml即可。
    请添加图片描述
  2. 编写workflow的yml代码, 可以复制如下代码到自己yml中,需要更改的地方,在代码中已经标出
    name: syncToGitee
    on:
      push:
        branches:
          - main
    jobs:
      repo-sync:
        runs-on: ubuntu-latest
        steps:
          - name: Checkout source codes
            uses: actions/checkout@v3
    
          - name: Mirror the Github organization repos to Gitee.
            uses: Yikun/hub-mirror-action@master
            with:
              src: 'github/RapidAI'    						# 这里改为自己github账号名称,如github/xiaoming
              dst: 'gitee/RapidAI'     						# 这里改为gitee上账号名称,如gitee/xiaoming
              dst_key: ${{ secrets.GITEE_PRIVATE_KEY }}  	# 这是生成的私钥,下面第3步会讲
              dst_token:  ${{ secrets.GITEE_TOKEN }}     	# 这是gitee上生成的token,下面会讲
              force_update: true
              static_list: "YOLO2COCO"   					# 同步的仓库名称,这里为YOLO2COCO,意思是会自动同步该仓库到gitee下同名仓库
              debug: true
    
  3. 配置公钥、私钥和Gitee Token
    1. 配置公钥和私钥:公钥是Gitee这里拿着,私钥是Github拿着。因为是Github这里要同步到Gitee.
      • 生成私钥和公钥:ssh-kengen -t ed25529 -C xxxx@xxx.com ,具体可参见:生成/添加SSH公钥
      • 生成完之后,会在指定目录下有两个文件:id_ed25519id_ed25519.public,前者是私钥,后者是公钥。
      • id_ed25519用记事本打开,复制里面内容,粘贴到Github个人仓库下的secret中。步骤:点击仓库首页选项卡setting,会看到如下图,点击新建New repository secret
        在这里插入图片描述
      • 输入Name为GITEE_PRIVATE_KEY, Value为复制的私钥内容
        在这里插入图片描述
    • 打开Gitee个人账号的设置页面 → 点击安全设置下的私人令牌 → 右上角生成新令牌,如下图所示:
      在这里插入图片描述
    • 点击提交之后,会得到类似下图所示的私人令牌,将其复制,并配置到Github的secret界面,类似上一步的私钥那样。
      在这里插入图片描述
    • 最终Github这里配置的Actions secrets如下:
      在这里插入图片描述
    1. 配置Gitee端的公钥:进入Gitee个人账号界面下的SSH公钥界面,类似下图,将上面生成的id_ed25519.public目录用记事本打开,复制里面内容到下图中的公钥框里,标题可根据用途命名。
      在这里插入图片描述
  4. 至此,整个配置就已经完毕。可以将步骤2中的yml文件提交到仓库中,就可以自动触发Actions执行,可以查看是否可以自动同步到Gitee仓库下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/18535.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis Plus一对多联表查询及分页解决方案

文章目录需求需求分析分页问题说明分页问题原因一对多场景一一对多场景二性能优化优化解决方案需求 查询用户信息列表,其中包含用户对应角色信息,页面检索条件有根据角色名称查询用户列表; 需求分析 一个用户对应多个角色,用户…

java计算机毕业设计ssm党支部在线学习

项目介绍 本党支部在线学习是针对目前学习的实际需求,从实际工作出发,对过去的学习系统存在的问题进行分析,完善用户的使用体会。采用计算机系统来管理信息,取代人工管理模式,查询便利,信息准确率高,节省了开支,提高了工作的效率。 本系统结合计算机系统的结构、概念、模型、原…

【深度学习】torch.utils.data.DataLoader相关用法 | dataloader数据加载器 | pytorch

文章目录前言一、DataLoader介绍二、DataLoader的子方法(可调用方法)前言 dataloader数据加载器属于是深度学习里面非常基础的一个概念了,基本所有的图像项目都会用上,这篇博客就把它的相关用法总结一下。 之所以要写这篇&#x…

1-1 开源许可证GPL, BSD, MIT, Mozilla, Apache, LGPL的介绍

文章目录前言开源许可证由来开源许可证类型开源许可证介绍GPL协议BSD协议MIT协议Mozilla许可Apache协议LGPL开源协议前言 开源许可证(Open source licenses),广义来讲是指一种被用于计算机软件或其他产品的,允许在指定的条款内使…

zMemif: go语言高性能网络库

简介 开发zMemif的主要动机是go有很高的处理能力,但是内置的udp库的确有些寒酸, 纯c开发效率又有些低,虽然可以用nff-go来实现go和dpdk的融合,但是cgo编译的确有点烦人,而且这个项目似乎也死了。然后考虑到容器的场景…

单点登录以及实现(前后端分离和前后端不分离方式)

本文主要使用springSecurity来实现,其他实现请参照其原理自行研究。 一,单系统登录机制 1、http无状态协议 web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处…

谷粒学院(三) 项目前端知识

一、VS Code 1、插件安装 为方便后续开发,建议安装如下插件(红色矩形框标记的插件)2、创建项目 vscode本身没有新建项目的选项,所以要先创建一个空的文件夹,如project_xxxx。 然后打开vscode,再在vscode里面…

二维随机向量的数学期望E与协方差σ

目录 1. 二维随机向量(X,Y)的数学期望EX, EY 2. 二维随机向量函数zg(X,Y)的数学期望EZ 3. 二维随机向量(X,Y)的方差DX, DY 4. 二维随机向量的性质(和、积的数学期望E与方差D) 5. 二维随机向量的协方差COV和相关系数ρ 5.1 协方差COV定义 5.2 协方…

私有数据传参

在串口工具进行输入: echo 1 > /dev/myled0 ---->led1灯点亮 echo 0 > /dev/myled0 ---->led1灯熄灭 echo 1 > /dev/myled1 ---->led1灯点亮 echo 0 > /dev/myled1 ---->led1灯熄灭 echo 1 > /dev/myled2 ---->led1灯点亮 echo 0 >…

java计算机毕业设计springboot+vue员工管理系统

项目介绍 本员工管理系统是针对目前村委会管理的实际需求,从实际工作出发,对过去的员工管理系统存在的问题进行分析,完善用户的使用体会。采用计算机系统来管理信息,取代人工管理模式,查询便利,信息准确率高,节省了开支,提高了工作的效率。 本系统结合计算机系统的结构、概念、…

无线蓝牙耳机什么牌子好一点?2022年蓝牙耳机推荐

喜欢听音乐,自然离不开耳机的支持,一款优质且时尚的耳机,能够带来极致的音效,可是该如何选择合适的耳机,成为了摆在眼前一个很重要问题如果这个问题一直萦绕在你的脑海中,那么下面的选择相信定不会错。 TO…

多线程异步方法Spring Security框架的SecurityContext无法获取认证信息的原因及解决方案

Spring Security是Spring生态提供的用户应用安全保护的一个安全框架,其提供了一种高度可定制的实现身份认证(Authentication),授权(Authorization)以及对常见的web攻击手段做防护的方法。 之前我的博客Oauth2与Spring Security框架…

章鱼网络 Community Call #4|推进章鱼社区治理

全长5922字,预计阅读 15 分钟 撰文:MiX 微信交流:MixMetaverse 北京时间2022年11月8日21点,章鱼网络举行第4期 Community Call,10月8日是章鱼一周年庆典,所以本次 Community Call 我们讨论了最近2个月内很…

git可视化工具-sourceTree

1. 下载 官网的下载地址,可以根据自己的电脑操作系统选择合适的版本下载,我下载的是windows版本 Sourcetree | Free Git GUI for Mac and Windows A Git GUI that offers a visual representation of your repositories. Sourcetree is a free Git clie…

ArcGIS提取图斑四至点,可不再是四至范围哦

上一期我们向大家介绍了 ArcGIS计算图斑四至坐标原来这么简单!可不要在走弯路哦_GIS思维的博客-CSDN博客​​ArcGIS计算图斑四至坐标原来这么简单!可不要在走弯路哦https://blog.csdn.net/kinghxj/article/details/127941005 今天我们要向大家介绍一下 …

Gem5 for Ubuntu20.04

一、安装Ubuntu 参考教程:史上最全最新Ubuntu20.04安装教程(图文) - 知乎 (zhihu.com) 1. 查看Ubuntu版本号命令: lsb_release -a 显示如下: Distributor ID: Ubuntu //类别是ubuntu Description: Ubuntu 2…

LeetCode力扣刷题——指针三剑客之二:树

树 一、数据结构介绍 作为(单)链表的升级版,我们通常接触的树都是二叉树(binary tree),即每个节点最多有 两个子节点;且除非题目说明,默认树中不存在循环结构。LeetCode 默认的树表示…

树的孩子兄弟链存储表示创建、遍历等算法

【实验目的】 1. 掌握树的孩子兄弟链存储表示。 2. 掌握树的创建、遍历等算法。 【问题描述】 树的创建及其操作。 【基本要求】 1. 创建树的孩子兄弟链式存储表示。假设以二元组(F,C)的形式输入一颗树的诸边,其中F表示双亲结点标识,C表示孩子结点…

python的opencv操作记录(九)——图像清晰度计算

文章目录图像清晰度计算的一般思路图像梯度图像梯度绝对值与梯度角度基于梯度的方式计算梯度算子1——Sobel算子计算梯度算子2——Laplacian算子梯度统计评分平均梯度梯度总和Demo图像清晰度计算的一般思路 定义图像清晰度是一个比较定制化,或者说比较偏业务属性的…

MySql面试

0. InnoDB与MyISAM的区别 1)InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提 交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务&…