gitee与github双向自动同步的方法
原文网址:gitee与github双向自动同步的方法_IT利刃出鞘的博客-CSDN博客
简介
说明
本文介绍gitee与github双向自动同步的方法。包括:gitee同步到github和github同步到gitee。
官网网址
仓库镜像管理 ( Gitee <-> Github 双向同步) - Gitee.com
功能简介
仓库镜像管理功能用于配置和管理仓库镜像;配置仓库镜像可以实现不同平台之间仓库分支、标签和提交信息的自动同步。
Gitee 支持设置两种镜像:
Push:用于将 Gitee 的仓库自动镜像到 GitHub 。
配置此镜像后,当你提交代码到 Gitee 的仓库时,Gitee 会自动向 GitHub 同步仓库。
Pull:用于将 GitHub 的仓库镜像到 Gitee 。
你可以根据自身需求选择 自动镜像 或 手动镜像;
自动镜像:当你提交代码到 GitHub 镜像仓库时,Gitee 会自动从 GitHub 同步仓库;
手动镜像:只有你手动点击更新按键时,Gitee 才会从 GitHub 同步仓库。
仓库镜像会同步以下内容:
- 分支(Branches)
- 标签(Tags)
- 提交记录(Commits)
配置仓库镜像可以帮助你管理 GitHub 的仓库,减少维护不同平台仓库的时间成本。
如果你在使用过程中遇到问题,请移步 用户反馈仓库 向我们反馈。
配置仓库镜像
添加 Push 方向的镜像
Push 方向的镜像用于将 Gitee 的仓库自动镜像到 GitHub 。
配置此镜像后,当你提交代码到 Gitee 的仓库时,Gitee 会自动向 GitHub 同步仓库。
你可以通过以下方式添加 Push 方向的镜像:
进入需要使用镜像功能的仓库,进入「管理」找到「仓库镜像管理」选项,点击「添加镜像」按键;
如果你还没有绑定 GitHub 帐号,请根据弹窗提示绑定 GitHub 帐号;
添加镜像;
在「镜像方向」中选择 Push 方向;
在「镜像仓库」下拉列表中选择需要镜像的仓库;
在「个人令牌」中输入你的 GitHub 私人令牌;
- 私人令牌中必须包含对 repo 的访问授权,否则添加后镜像不可用。
点击「添加」保存镜像配置。
配置完成后,可以通过以下方式触发镜像操作(Gitee 向 GitHub 同步仓库):
- 提交代码到 Gitee 仓库
- 手动更新镜像
镜像触发的最短间隔时间为 5 分钟。
如果只配置了 Push 方向的镜像,建议将最新的代码提交到 Gitee 仓库;
Gitee 会自动向 GitHub 同步仓库(分支/Branches、标签/Tags、提交记录/Commits)。
添加 Pull 方向的镜像
Pull 方向的镜像用于将GitHub 的仓库镜像到 Gitee 。
你可以根据自身需求选择 自动镜像 或 手动镜像。
你可以通过以下方式配置 Pull 方向的镜像:
进入需要使用镜像功能的仓库,进入「管理」找到「仓库镜像管理」选项,点击「添加镜像」按键;
如果你还没有绑定 GitHub 帐号,请根据弹窗提示绑定 GitHub 帐号;
添加镜像;
在「镜像方向」中选择 Pull 方向;
在「镜像仓库」下拉列表中选择需要镜像的仓库;
在「个人令牌」中输入你的 GitHub 私人令牌;
- 私人令牌中必须包含对
repo
的访问授权,否则添加后镜像不可用;
- 私人令牌中必须包含对
根据自身需求选择是否勾选「自动从 GitHub 同步仓库」;
- 勾选后,我们将会在镜像仓库中自动生成 webhook 用于实现自动镜像;
- 此功能需要你的个人令牌中包含对 admin:repo_hook 的访问授权,否则会添加失败;
点击「添加」保存镜像配置;
- 如果添加失败,请根据 如何申请 GitHub 私人令牌 提供的流程重新申请私人令牌;
- 如果重新申请私人令牌后仍然添加失败,请取消勾选「自动从 GitHub 同步仓库」后点击「添加」保存镜像,并 手动配置 webhook。
配置完成后,可以通过以下方式触发镜像操作(Gitee 从 GitHub 同步仓库):
- 推送代码到 GitHub 镜像仓库
- 手动更新镜像
镜像触发的最短间隔时间为 5 分钟。
如果只配置了 Pull 方向的镜像,建议你将最新的代码提交到 GitHub 镜像仓库;
Gitee 会自动从 GitHub 同步仓库(分支/Branches、标签/Tags、提交记录/Commits)。
双向镜像
双向镜像指对同一个 GitHub 仓库同时配置了两种镜像。
配置双向镜像后,你在任意一个平台上提交的代码都将被同步到另一个平台。
Note:双向镜像目前存在代码丢失的风险,请谨慎使用!
为避免代码丢失,使用 双向镜像 功能时,请遵循以下规则
不要同一时间在 Gitee 仓库和 GitHub 镜像仓库提交代码;
尽量保证 Gitee 仓库和 GitHub 镜像仓库的提交代码间隔时间大于 30 分钟。
管理仓库镜像
注意事项
使用仓库镜像功能时,请关注以下信息:
只支持镜像 已绑定 GitHub 帐号授权访问的 仓库;
更新请求一旦发出,除非 强制停止,否则将无法中断;
暂时不支持同步 Git-LFS;
同步时间超过 30 分钟视为超时,大型仓库不建议使用镜像方式同步;
镜像操作会覆盖目标仓库的分支、标签和提交记录;请注意备份并小心使用。
手动更新
无论何时,都可以通过使用「仓库镜像管理」页面中的「更新」按键手动发起更新请求。
更新请求一旦发起将无法手动停止,请谨慎操作。
每一个镜像的最短更新时间间隔为 5 分钟。
强制停止
镜像更新请求发起后,如果连续 5 次镜像失败,镜像操作将被强制停止。
你可以在镜像列表中看到最后一次镜像失败返回的错误信息。
强制停止后,最快可以在 5 分钟后再次发起更新请求。
常见问题
如何申请 GitHub 私人令牌?
GitHub 私人令牌用于授予 Gitee 读写 Github 仓库的权限。
你可以通过以下方式申请 GitHub 私人令牌:
登录与 Gitee 绑定的 GitHub 帐号;
通过路径「用户头像」→「Settings」进入「Developer setting」;
选择「Personal access tokens」选项后点击「Generate new token」;
「Note」字段可以随意填写;例如,Gitee_Mirror;
「Select scopes」字段请根据你的需求进行勾选;
- repo 字段为必选字段,请您直接勾选;
- admin:repo_hook 字段为可选字段,用于自动生成 webhook;
当您需要 Gitee 自动从 GitHub 同步仓库时,建议您勾选。
点击「Generate token」生成私人令牌;
复制私人令牌并妥善保管。
为什么推送到 GitHub 会失败?
如果你的 GitHub 帐号启用了 Keep my email addresses private(对我的电子邮件地址进行保密)功能,且在 Gitee 上使用你的邮箱 push 代码的话,通过 Gitee 推送将会受到该功能限制。
如何手动配置 Webhook?
Webhook 用于实现 Pull 方向镜像的自动同步。
如果你无法使用我们提供的自动生成 webhook 功能,或者误删了自动生成的 webhook;
你可以通过以下方式手动配置 webhook:
1. 申请 Gitee 的私人令牌
如果你现有的私人令牌中包含了「project」权限,可以跳过此步骤
通过路径「用户头像」→「设置」找到「私人令牌」选项;
根据以下步骤生成一个私人令牌;
- 「私人令牌描述」字段可以随意填写;例如,Gitee_Mirror;
- 勾选 project 权限;
- 点击「提交」生成私人令牌;
复制私人令牌并妥善保管。
2. 配置 webhook
进入 GitHub 的镜像仓库中,进入「Setting」找到「Webhooks」选项,点击「Add webhook」;
按照如下格式填写「Payload URL」字段;
https://gitee.com/api/v5/repos/:owner/:repo/remote_mirror/pull?access_token=:personal access token
- :owner:指仓库归属
- :repo:指仓库名称
- :personal access token:指你的 Gitee 私人令牌
选择「Just the push event.」;
- 需要自定义触发行为时,请选择「Let me select individual events.」后自行定义;
确保「Active」处于勾选状态后,点击「Add webhook」保存 webhook;
3. Webhook 连通性测试
保存 webhook 后,GitHub 会自动发送测试请求,可以通过查看列表中 icon 判断 webhook 是否正常工作。
正常:
不正常:
- 遇到此情况,请仔细检查「Payload URL」是否正确后重试。
常见错误
未找到此仓库:请检查镜像仓库是否被删除或更改名称。
无效的私人令牌:请检查私人令牌是否输入正确。
无权限的私人令牌:请检查私人令牌是否包含 repo 授权;
仓库正在读写中,请稍后重试:Pull 或 Push 镜像正在更新中,请在更新结束后重试即可。
gitee与github双向自动同步的方法相关推荐
- Github Actions 自动同步到 Gitee
目录 引言 具体方案 引言 平时开源代码一般已Github为主,但是会遇到网不好的情况,于是考虑将Github仓库自动同步到Gitee上,作为备份. 考虑不能手动做这个事情,于是想到了Github A ...
- 用FileYee轻松实现电脑文件夹双向自动同步备份?
如果一份文件可以自动在你的2个存储硬盘里进行备份保存,你觉得如何呢?对于一个每天面对很多重要文件的上班族来说,每天要保存很多的资料文件.但是总是担心公司电脑的损坏,造成公司重要资料文件的全部丢失. 最 ...
- MySQL数据库实现双向自动同步
下载网站:www.SyncNavigator.CN 客服QQ1793040 ---------------------------------------------------------- 关于 ...
- Typora+Git+Gitee实现个人笔记自动同步
Typora+Git+Gitee配置markdown笔记自动同步 配置gitee 注册gitee账号 在你自己电脑上(这里以windows举例),生成公钥 打开你的公钥文件,复制全部内容 找到设置,添 ...
- 分享一招非常实用的文件自动同步备份方法
对于白领来说每日繁忙的工作文件常常让人疲惫不堪,如果没有日常没有养成数据备份的习惯,那么如果数据丢失,那么值钱的工作就功亏一篑.那么对于个人来说,什么样的文件同步方式较好呢?今天小西分享一招非常实用的 ...
- mysql自动同步数据_MySQL数据库实现双向自动同步
[IT168 技术]本文将探讨如何通过MySQL数据库的高级特性,实现数据库的双向自动同步,确保数据的冗余与完整性.通过以往真实的项目实战与经验,把操作实施过程全部记录下来,主要有以下几个主要内容. ...
- 用GitHub Actions自动部署Hexo
本文不算原创,是根据参考文档结合自己的需要修改而成,但也非转载和翻译. 老苏一直用 hexo 发博文,发布过程经历了 三个阶段 第一阶段 : 在家里的台式机上发布 hexo ,流程是先把要发布博文的 ...
- windows 实时自动同步两个文件夹
情况说明 在一台windows电脑上有两个文件夹A和B,其中A是主文件夹,B需要实时备份A中的内容. 解决方案: 1.使用SyncToy软件同步两个文件夹: 但SyncToy不能实时自动同步,需要手动 ...
- openwrt时间自动同步
时间自动同步的方法: 1.用crontab定时调用执行命令:ntpd -n -d -p stdtime.gov.hk 其中:stdtime.gov.hk是时间同步服务器,也可以用 0.openwrt. ...
最新文章
- Android Studio Day03-1(Android studio 系统界面简介)
- 01_字符串处理-----03_替换和校正标识符
- Parallel小记
- 直播 | DPDK中国技术峰会2017
- 除了组件超配光伏效率还能如何提升?
- e4a html文本,E4A 怎么将剪贴版中的文本 粘贴到窗口的光标处啊?求个代码
- SSH基本原理和免密码登录
- (转)基于MVC4+EasyUI的Web开发框架经验总结(7)--实现省份、城市、行政区三者联动...
- jetty-maven-plugin
- c语言贪吃蛇游戏代码较难,用C语言编写贪吃蛇代码(难度可选)
- 离合器膜片弹簧的优化设计matlab,汽车离合器膜片弹簧结构优化设计(本科毕业论文设计)...
- html5 侧面板展开折叠,css实现侧边展开收起
- 手工测试人员如何转测试开发?
- web前端之HTML5 入门(9):脚本、速查列表、URL、字符实体
- 2022-2027年中国科技孵化器市场竞争态势及行业投资前景预测报告
- 邮件发送与接收,支持163邮箱、outlook邮箱、exchange邮箱
- 滴滴 2019校园招聘笔试编程题-2018.09.18
- 正则表达式(第1部分) - 基本语法
- CSS制作的32种图形效果 梯形 | 三角 | 椭圆 | 平行四边形 | 菱形 | 四分之一圆 | 旗帜
- 严格对角化基态Lanczos算法C++ Eigen实现
热门文章
- android使用AlarmManager实现应用每天定时执行任务
- 基于Pytorch的语音情感识别系统
- MATLAB怎么解方程解,怎么用MATLAB求解微分方程组并画出解函数图?
- java接口与抽象类的优缺点_java抽象类与接口的比较
- 基于ZigBee的物联网毕业论文设计
- java okhttp3 使用_java okhttp3 的使用方法
- 【51单片机】DAC0832制作信号发生器(方波,三角波,锯齿波)
- 线程池源码分析之ThreadPoolExecutor
- 正面管教之PHP_正面管教家长互助(PHP)体验课2
- 基于智能软开关的配电网优化调度matlab