同时将代码备份到Gitee和GitHub

如何将GitHub项目一步导入Gitee

如何保持Gitee和GitHub同步更新

如何将GitHub项目一步导入Gitee

方法一:

登陆 Gitee 账号,点击右上角的 + 号,点击「从 GitHub 导入项目」,在跳转的页面中授权 Gitee 访问。

然后选择性的从GitHub中导入

方法二:

在创建项目的时候,选择导入已有项目。

如果是私有项目将会需要输入 GitHub 的账号信息。

如何保持Gitee和GitHub同步更新

方式一: 使用Gitee的强制同步

我还是只用维护 github 那份源码, gitee 这边没忘记的话, 手搓点击下强制同步按钮即可。

但是容易忘记, 造成两边不完全同步。

切记,只有从GitHub上导入的仓库才有强制同步的按钮

方式二: 手搓 push 多次

那么不外乎就是配置多个远程库地址, 多次推送咯, 那么我们先来看看现有远程库的情况(以:WhiteHole

$ git remote --verbose
origin https://gitee.com/BlackThompson/white-hole.git (fetch)
origin https://gitee.com/BlackThompson/white-hole.git (push)

可以看到目前仅有 https://gitee.com/BlackThompson/white-hole.git 这个远程库地址.

我们来加一个 gitee 的远程地址, 首先在 gitee 建好同步仓库, 然后我们在本地添加一个新的远程库地址:

$ git remote add githuborigin https://github.com/BlackThompson/WhiteHole

添加完成后我们查看一下:

$ git remote --verbose
githuborigin https://github.com/BlackThompson/WhiteHole (fetch)
githuborigin https://github.com/BlackThompson/WhiteHole (push)
origin https://gitee.com/BlackThompson/white-hole.git (fetch)
origin https://gitee.com/BlackThompson/white-hole.git (push)

可以查看到以下2个远程库地址:

githuborigin: 是我们新加的 github 的远程库地址

origin: 是我们之前在 gitee 的远程库地址

接下来同步:

git add .
git commit -m "add gitee"
git push -u origin master
git push -u githuborigin master

比之前多个一次 git push 操作…其他和之前没有太大区别…没有更多的心智负担.

但是经常容易忘记…

方式三: 最多跑一次

不想着法偷懒的 coder 不是好程序员, 秉承 “最多跑一次” 的理念, 让我们试试怎么一次 push 统统搞定.

在本地 git 仓库里找到这个文件 .git/config, 内容如下:

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = https://gitee.com/BlackThompson/white-hole.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[gui]
wmstate = normal
geometry = 1205x669+38+38 276 304
[remote "githuborigin"]
url = https://github.com/BlackThompson/WhiteHole
fetch = +refs/heads/*:refs/remotes/githuborigin/*

改为如下:

合并2个 remote 配置

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = https://github.com/BlackThompson/WhiteHole
url = https://gitee.com/BlackThompson/white-hole.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master

上面这个手动配置是为了更好的说明而已, 其实可以用以下命令简化操作, 在 origin 节点下补充了一个新的远程地址.

$ git remote set-url --add origin https://github.com/BlackThompson/WhiteHole

看看补充后的远程地址情况

$ git remote --verbose
origin https://gitee.com/BlackThompson/white-hole.git (fetch)
origin https://gitee.com/BlackThompson/white-hole.git (push)
origin https://github.com/BlackThompson/WhiteHole (push)

注意看后面的 (fetch)(push), 相信你会明白点什么.

然后我们可以继续这样使用来实现 github & gitee 的同步推送和分发:

git add .
git commit -m "github & gitee 同步推送和分发"
git push origin master

可以看到, 使用上和最初没有任何区别, 只是多配置了一次, 算是实现了 “最多配(跑)一次”.

方式四:命令行把GitHub上的代码拉取导入Gitee

如果是本地仓库,只在需要命令行添加用不同名称标识的 Gitee 和 Github 远程库。

git remote add 远程库名 远程库地址

具体方法操作如下:

1、首先通过 git remote -v 查看您要同步的仓库的远程库列表,如果在列表中没有您码云的远程库地址,您需要新增一个地址

git remote add 远程库名 远程库地址

eg: git remote add gitee git@github.com:xxx/xxx.git

如果在 add 的时候出现error: Could not remove config section ‘remote.xxx’.一类的错误,通过把仓库下.git/config 文件里面的 [remote “xxx”] 删掉或者是用别的远程库名即可。

2、从GitHub上拉取最新代码到本地

git pull 远程库名 分支名

eg:git pull origin master

3、推送本地最新代码到码云上

git push 远程库名 分支名

eg:git push gitee master

如果出现有差异的话需要自己手动解决差异

参考文章:

如何将 GitHub 项目导入码云?一步搞定!

如何同步多个 git 远程仓库

————————————————

原文链接:https://blog.csdn.net/qq_51771849/article/details/114179329

同时将代码备份到Gitee和GitHub的更多相关文章

  1. 利用Gitee转接GitHub下载加速 简简单单 - 快快乐乐

    利用Gitee转接GitHub下载加速 简简单单 - 快快乐乐 JERRY_Z. ~ 2020 / 10 / 26 转载请注明出处!️ 目录 利用Gitee转接GitHub下载加速 简简单单 - 快快 ...

  2. git同步源码到gitee和github

    如何把我们的源码同步到gitee或github远程仓库中 同步方式分以下几种: 1.命令同步    先查看下我们是否有远程仓库:git remote -v 如有就要删除远程仓库或是同命令覆盖,如全新安 ...

  3. VsCode[Git] | 配置Gitee和Github | 不使用全局用户名和邮箱

    (VsCode[Git] | 配置Gitee和Github | 不使用全局用户名和邮箱 | 2021-04-11) 目录 一 .安装Git / VsCode配置Git / Win10系统 二.Git配 ...

  4. 8人/天,小记一次 JAVA(APP后台) 项目改造 .NET 过程(后台代码已完整开源于 Github)

    Github: https://github.com/iccb1013/Jade.Net 我们只消耗了8人/天的时间,完成了全部工作,基于我们 Jade.Net 的开源后台代码,任何小规模的后台管理系 ...

  5. Git初次使用总结,安装到上传代码,多平台[码云|github]

    安装步骤 1.选择安装路径 2.选择创建图标,选择安装Git Bash和Git GUI 3.选择创建开始菜单 4.选择:use git and optional unix tools from the ...

  6. 博客使用的CSS代码备份

    CSS代码备份 /*simplememory*/ #google_ad_c1, #google_ad_c2 { display: none; } .syntaxhighlighter a, .synt ...

  7. 1.svn 彻底clear时,注意代码备份 2.借助vc助手加头文件

    1.svn 彻底clear时,注意代码备份 2.不小心彻底clear可以在回收站找到 3.借助vc助手加头文件

  8. Git安装教程最新版本(国内gitee国外github)

    Git安装教程最新版本(国内gitee国外github) 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章, 关注回复「资源」, 获取大师使用的typora主题: http://w ...

  9. CentOS 系统下Gitlab搭建与基本配置 以及代码备份迁移过程

    GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代码免费托管到 GitLab.com,而且不限项目数量和成员数.最吸引人的一点是,可以在 ...

随机推荐

  1. C++获取设备 PID,VID 信息

    可直接编译(设置成:使用多字节字符集) 转来的,代码: /* http://www.experts-exchange.com/Programming/Editors_IDEs/Q_24506125.h ...

  2. Shell 脚本是什么?

    一个 Shell 脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件(Shell 脚本)来完成这些日常工作任务.- ...

  3. setTimeout时间延迟为何不准?

    单线程, 先执行同步主线程, 再执行异步任务队列

  4. 如何在 Spring Boot 中禁用 Actuator 端点安全性?

    默认情况下,所有敏感的 HTTP 端点都是安全的,只有具有 ACTUATOR 角色的用户才能访问它们.安全性是使用标准的 HttpServletRequest.isUserInRole 方法实施的. ...

  5. 是否使用过 Redis 集群,集群的原理是什么?

    1).Redis Sentinal 着眼于高可用,在 master 宕机时会自动将 slave 提升为 master,继续提供服务. 2).Redis Cluster 着眼于扩展性,在单个 redis ...

  6. java-spring

    Spring-IOC ioc概念 控制反转 把对象创建和对象之间的调用过程,交给Spring 进行管理. 目的就是,为了降低耦合度,因为当你想在一个类当中调用另外一个类的方法,你需要获得另外一个类的实 ...

  7. 用 wait-notify 写一段代码来解决生产者-消费者问题?

    只要记住在同步块中调用 wait() 和 notify()方法,如 果阻塞,通过循环来测试等待条件.

  8. Spark学习摘记 —— Pair RDD行动操作API归纳

    本文参考 参考<Spark快速大数据分析>动物书中的第四章"键值对操作",本篇是对RDD转化操作和行动操作API归纳的最后一篇 RDD转化操作API归纳:https:/ ...

  9. 小程序wx.createInnerAudioContext()获取不到时长问题

    最近在开发小程序中,需要用到音频播放功能.但在初始化时,使用InnerAudioContext.duration获取不到音频的时长. Page({ /** * 生命周期函数--监听页面初次渲染完成 * ...

  10. 原生js实现架子鼓特效

    这是代码完成的效果,按下abcd会出现对应的架子鼓音乐的效果. 简单的介绍下代码思路,html和css部分就不多说了. 重要的是js部分. 大致是这样的, 首先获取到所有的按钮为一个数组,然后遍历整个 ...